Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.20;
Скачать: CL | DM;

Вниз

dBGrid   Найти похожие ветки 

 
dimablind   (2003-10-31 23:31) [0]

Здравствуйте, уважаемые кодеры! Уповаю на Вашу помощь!
Имею на форме 7 кнопок. В зависимости от номера нажатой кнопки
формирую запрос, результат которого вывожу в dbgrid. На форме он появляется только после нажатия кнопки (visible:=true). До нажатия кнопки он невидим ( visible:=false).
Он не выводит в себя данные. Ничего не происходит, если пытаться в нем что-нибудь набрать.
Пытался отключать у него datasource и подключать непосредственно перед выводом на экран. Никаких результатов.
Поскажите, пожалуйста, в чем может быть дело? Связано ли это с тем, что он на форме первоначально невидим?
Да, запрос работает правильно.
Спасибо!


 
Beginner3000   (2003-11-01 00:43) [1]

код в студию


 
Stratos ©   (2003-11-01 03:54) [2]

А проверить Query1.Active = True? Ты чем запрос посылаешь?

PS: А за "кодеров" ответишь... ;)


 
dimablind   (2003-11-01 13:19) [3]

Для простоты я пока сделал для одной кнопки:
procedure TForm1.sb1click (Sender as TObject);
begin
query1.close;
query1.params[0].asinteger:=query2.fieldbyname("number").asinteger;
query1.params[1].asstring:="1";
query1.open;
dbgrid1.datasource:=datasource1;
dbgrid1.visible:=true;
dbgrid1.setfocus;
end;
По нажатию клавиши escape он должен убираться с экрана.
procedure TForm1.formkeyup ...
begin
if key=vk_escape then
if dbgrid1.focused then
begin
query1.close;
dbgrid1.datasource:=nil;
dbgrid1.visible:=false;
end;
end;
Подчеркну, что запрос работает правильно, содержит данные , которые меня интересуют...


 
TohaNik ©   (2003-11-01 19:00) [4]

dbgrid1.datasource:=datasource1; поставь перед query1.close;


 
Beginner3000   (2003-11-02 00:36) [5]

dbgrid1.datasource:=nil
думаю не надо

по поводу невидимости:
это зависит от того кому не видим
если пользователю - то всё в порядке
а если датасету, то плохо конечно


 
Плохиш_   (2003-11-02 03:41) [6]

>dimablind (01.11.03 13:19) [3]

Короче:

procedure TForm1.Button1Click(Sender: TObject);
begin
Query1.close;
case (Sender as TButton).Tag of
1: Query1.Params[0].AsString:="South America";
2: Query1.Params[0].AsString:="North America";
3: Query1.Params[0].AsString:="America";
end;
Query1.open;
DBGrid1.visible:=true;
DBGrid1.SetFocus;
end;

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=vk_escape then
if dbgrid1.focused then
begin
query1.close;
dbgrid1.visible:=false;
end;
end;


прекрасно работает.
Ищи ошибку в 17й строке с помощью F7/F8


 
P.N.P. ©   (2003-11-02 03:48) [7]


> Он не выводит в себя данные. Ничего не происходит, если
> пытаться в нем что-нибудь набрать

Ясен пень, это же TQuery, а не TDataset или TTable



Страницы: 1 вся ветка

Текущий архив: 2003.11.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.025 c
14-66129
MaG
2003-10-28 15:45
2003.11.20
Паскаль


3-65792
Shnaider
2003-10-30 07:52
2003.11.20
Контакты Outlook


3-65733
Pul
2003-10-31 14:19
2003.11.20
Как получить список серверов Interbase в сети


1-65847
Barman
2003-11-09 18:28
2003.11.20
Кодировка


3-65752
Aleksandr
2003-10-31 12:24
2003.11.20
Как можно писать блобы типа Image в MS SQL?