Вниз
Скачать: CL | DM;

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

 
Openfire   (2005-03-03 13:45) [0]

Добрый день!
Проблема такая: есть PageControl c тремя закладками (T,B,S), на закладке B расположен DBGrid3 при нажании DblClick выполняется следующее:
  dcl:=true; -- для отловления события что нажали DblClick
  Edit5.Enabled:=True;
  Edit5.Text:=DBGrid3.SelectedField.AsString;
  CheckBox1.Checked:=False;
  Application.ProcessMessages;
  PageControl1.ActivePage:=S;

в PageControl1 S в OnShow стоит следующее:
if dcl=false then
 begin
  Errors_Per(IncDay(Date,-1),IncDay(Date,1)); -- текст ниже
  CheckBox1.Checked:=True;
  Edit5.Enabled:=False;
  Edit5.Text:="";
 end
else
 begin
  Errors_Per_J(IncDay(Date,-1),IncDay(Date,1)); -- аналогично Errors_Per
  dcl:=false;
//   MessageDlg("3",mtInformation,[mbOk], 0);
 end;

Текст Errors_Per
with DataModule1.Errors do
 begin
  Close;
  SetVariable("DT1",dts1);
  SetVariable("DT2",dts2);
  Open;
{-- --}
  DataModule1.DataSource4.DataSet:=DataModule1.Errors;
 end;

Если не раскомментировать MessageDlg, то при двойном нажатии в DBGrid в одной закладке (B), происходит переход на закладку S, информация в DBGrid на это закладке обновляется, но тутже исчезает...
Если не раскомментировать MessageDlg, то происходит тоже самое, но появляется MessageDlg, нажимаем Ок... Информация из DBGrid не исчезает...
При простом нажатии на закладку S информация в DBGrid отображается правильно...
Объясните в чем ошибка? Как ее побороть?


 
Erik1 ©   (2005-03-03 15:25) [1]

Сделать так, чтобы не исчезала, например if dcl=false это полный бред. Почему бы тебе неперенести код из OnShow в более подходящее место?


 
Openfire   (2005-03-04 09:59) [2]

Подскажи куда именно?


 
Erik1 ©   (2005-03-04 11:01) [3]

При PageControl1.ActivePage:=S; не все события отрабатывают. Можно использовать TPageControl.OnChange А при нажатии DblClick после ActivePage сразу выполнять нужную тебе процедуру.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.023 c
4-1107854819
MetalFan
2005-02-08 12:26
2005.03.20
EnumServicesStatus


4-1107822158
romshtain
2005-02-08 03:22
2005.03.20
Знаю чужого хендл окна, как получить хендлы всех объектов


14-1109255082
Ирина
2005-02-24 17:24
2005.03.20
Крис Касперский


9-1102700636
dRake
2004-12-10 20:43
2005.03.20
Точный тайминг


4-1107734223
Fessio
2005-02-07 02:57
2005.03.20
Папка "Мой компьютер"




   Наверх