![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Здравствуйте ребята. Задача такой . ест Form1, Form2 на пример, на второе форму выводит результаты поиска
Пользователь хочет что на (второе форму где выводит результаты поиска ) был кнопка где он будет отметит какой столбик отображалось и какой скрывать из первое форму делаю запрос выводит результат Код:
procedure TMainForm.cxButton1Click(Sender: TObject); begin Module.PoiskQuery.Close; Module.PoiskQuery.SQL.Clear; Module.PoiskQuery.SQL.Add('SELECT employee_id, first_name, last_name, email, phone_number, hire_date,'+ 'job_id, salary, commission_pct,manager_id, department_id '+ 'FROM hr.employees'); Module.PoiskQuery.SQL.Add('WHERE first_name LIKE '''+cxTextEdit1.Text+''''); Module.PoiskQuery.Open; Poisk.ShowModal; end; Проблема за это ! как реализовать это ! что он мог (скрывать и отображать колонки) по своего желанию ? |
#2
|
||||
|
||||
![]() Добавить на форму CheckListBox1
В него загрузить список колонок. Код:
PoiskQuery.GetFieldNames(CheckListBox1.Items); Обработать циклом Код:
for i := 0 to CheckListBox1.Count - 1 do begin //код для отображения \ скрытия end; |
Этот пользователь сказал Спасибо Uniq! за это полезное сообщение: | ||
xxbesoxx (27.03.2013)
|
#3
|
|||
|
|||
![]() Цитата:
Я честно говорю голову взрывается, цели день на это зависаю. пожалуйста по человечески покажите на это проекту как |
#4
|
||||
|
||||
![]() Дружище, извини я не работаю с АДО. И баз нету.
Значит смотри -DBGrid2, это таблица с твоей второй формы. -MyQuery2, это "запрос" где ты делаешь поиск. - первая процедура - это кнопка твоего поиска. - вторая процедура это кнопка на второй форме для отображения колонок. MyQuery2 = PoiskQuery (в твоём случае) Код:
procedure TForm1.but_searchClick(Sender: TObject); begin MyQuery2.SQL.Clear; MyQuery2.SQL.Add('Select * from `emp` where `comm` > 1'); MyQuery2.Execute; MyQuery2.GetFieldNames(CheckListBox1.Items); end; procedure TForm1.but_checkClick(Sender: TObject); var i: integer; begin for i := 0 to CheckListBox1.Count - 1 do DBGrid2.Columns[i].Visible := CheckListBox1.Checked[i]; end; Поправил вторую процедуру. В цикле не так чутка. Последний раз редактировалось Uniq!, 27.03.2013 в 22:07. |
Этот пользователь сказал Спасибо Uniq! за это полезное сообщение: | ||
xxbesoxx (27.03.2013)
|
#5
|
|||
|
|||
![]() Цитата:
так выйдет CheckListBox1 , щас попробую скрыть и отображать . Вам спасибо за помочь . время мало и за это спишу Код:
procedure TMainForm.cxButton1Click(Sender: TObject); begin Module.PoiskQuery.Close; Module.PoiskQuery.SQL.Clear; Module.PoiskQuery.SQL.Add('SELECT employee_id, first_name, last_name, email, phone_number, hire_date,'+ 'job_id, salary, commission_pct,manager_id, department_id '+ 'FROM hr.employees'); Module.PoiskQuery.SQL.Add('WHERE first_name LIKE '''+cxTextEdit1.Text+''''); Module.PoiskQuery.Open; Module.PoiskQuery.GetFieldNames(Poisk.CheckListBox1.Items); Poisk.ShowModal; end; |
#6
|
|||
|
|||
![]() Цитата:
да показывает дружище , ну настроить не магу . Извиняюсь второе код ваши работает вы проверили * |
#7
|
|||
|
|||
![]() Друг получилось но сейчас голова болит как это сохранить в ini файл
Код:
procedure TSetingForm.BitBtn1Click(Sender: TObject); var i: integer; begin i:=0; for i:=0 to CheckListBox1.Count - 1 do poisk.DBGridEh1.Columns[i].Visible := CheckListBox1.Checked[i]; end; |
#8
|
|||
|
|||
![]() Как указать что все это настройки сохранился ini файле ?
Цитата:
|
#9
|
||||
|
||||
![]() Код:
procedure TSetingForm.BitBtn1Click(Sender: TObject); var i: integer; begin i:=0; for i:=0 to CheckListBox1.Count - 1 do begin poisk.DBGridEh1.Columns[i].Visible := CheckListBox1.Checked[i]; ini.WriteString('Poisk',CheckListBox1.Items[i],CheckListBox1.Checked[i]); end; end; |
Этот пользователь сказал Спасибо Uniq! за это полезное сообщение: | ||
xxbesoxx (28.03.2013)
|
#10
|
|||
|
|||
![]() Спасибо сделал получилось
|