Форум: "Базы";
Текущий архив: 2003.11.20;
Скачать: [xml.tar.bz2];
Вниз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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.01 c