Вниз
Скачать: 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.016 c
14-96952
Anatoly Podgoretsky
2003-01-12 13:22
2003.01.30
Именинники 12 января


3-96632
mate
2003-01-14 10:03
2003.01.30
DBGrid и StringGrid


1-96834
Vaddya
2003-01-17 00:04
2003.01.30
StringGrid и DBGrid


1-96769
Sterh
2003-01-22 18:30
2003.01.30
Find files


1-96742
borg
2003-01-22 09:10
2003.01.30
Смещение




   Наверх