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

Видимость компонент на форме   Найти похожие ветки 

 
kerkonst ©   (2003-01-21 14:05) [0]

Здраствуйте !
И снова глупому мне требуется помощь...

Имеется формочка. На ней много PageContol-ов, некоторые из них
вложенные, куча закладок. На некоторых из закладок имеются
помимо прочего DBGrid-ы. Юзеру всегда одновременно виден только один DBGRid. Надо в любой момент времени знать, какой DBGrid видит юзер.

Пытался так. Вешал таймер и в нем:
for i:=0 to MainForm.ComponentCount-1 do
if MainForm.Components[i] is TDBGrid then
if (MainForm.Components[i] as TDBGrid).Visible then
begin
Ура ! Я нашел его !
...
Break;
end;

Но, у всех DBGid-ов visible=true.
Насколько я понял, visible работает "с точностью" до контейнера. Т.к. pagecontrol виден, то и все гриды типа видны.

Спрашивается, а как же всетки узнать, какой DBGrid видет юзер ?


 
MBo ©   (2003-01-21 14:08) [1]

if DBGridX.Parent=PageControl1.ActivePage


 
kerkonst ©   (2003-01-21 14:23) [2]

Эээ.. Идея интересная, но мне немного неясно, как конкретно ее реализовывать. PageControl-ов несколько, причем некоторые из них вложены друг в дружку.


 
MBo ©   (2003-01-21 14:28) [3]

может, проще будет по событию активации страниц проверять, есть ли на ней dbgrid и класть указатель на него в глоб. переменную?


 
kerkonst ©   (2003-01-21 14:34) [4]

сначала я примерно так и сделал.
Но, 1) некрасиво
2) при программном переключении pagecontrol.oncange не происходит.Если же каждый раз и здесь тоже сие делать, то это будет уже совсем некрасиво...

Хотя, счас с tabsheet.onenter попрубую...


 
kerkonst ©   (2003-01-21 14:55) [5]

OnEnter работает. Странно, что я сразу до него не допер, а возился с onchange.

Всем спасибо за участие...



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

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



Память: 0.46 MB
Время: 0.013 c
1-96734
kva
2003-01-22 11:36
2003.01.30
Реакция на быстрое изменение выбранной строки в списке


14-97018
Driverrr
2003-01-13 20:21
2003.01.30
WinXP


3-96611
Zn
2003-01-13 17:41
2003.01.30
Ошибка при работе с параметром в ADODataSet.


1-96784
VinRaider
2003-01-16 23:37
2003.01.30
Изменение цвета Label или StaticText


7-97064
avenger..
2002-11-14 22:50
2003.01.30
скрытие процесса в winNT и winXP




   Наверх