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

Вниз

Узнать имя активного компонента   Найти похожие ветки 

 
Сергей.   (2004-08-28 23:46) [0]

Мастера как узнать имя активного компонента (в фокусе)?
На формах есть много не стандартных компонентов.
Есть есть наследники от TCustomControl, TComponent.


 
GuAV ©   (2004-08-29 00:02) [1]


> TComponent.

только наследники TWinControl, а в частности TCustomControl могут получать фокус. потому что только у них есть окно. созданние визуальных компоентов от TComponent изврат, по крайней мере я такого не видел.


 
GuAV ©   (2004-08-29 00:06) [2]

А по сабжу, как мне преставляется, перебором controls рекурсивно.


 
Сергей.   (2004-08-29 00:06) [3]


> TComponent изврат, по крайней мере я такого не видел.

DevExpress library


 
GuAV ©   (2004-08-29 00:16) [4]


> > TComponent изврат, по крайней мере я такого не видел.
>
> DevExpress library

Ну тогда перебират Components

GetFocus() и искать такой Handle
или
TWinControl(Self).Focused

DevExpress library - про этих ничё не знаю. Их видимо обрабатывать отдельно.


 
jack128 ©   (2004-08-29 00:18) [5]

для TWinControl и наследников FindControl(GetFocus). всех остальных нужно индивидуально обрабатывать..


 
Сергей.   (2004-08-29 00:22) [6]

TWinControl(Application.Components[i]).Focused
Пишет Abstract Error .


 
GuAV ©   (2004-08-29 00:25) [7]


> Пишет Abstract Error .

Да, да
C:=Application.Components[i];
if C is TWinControl then
...
esle if C is TSomeDevExpressStuff then
...


 
jack128 ©   (2004-08-29 00:36) [8]

Сергей.   (29.08.04 0:22) [6]
TWinControl(Application.Components[i]).Focused
Пишет Abstract Error .

хе. Любопытно, кто это создает абстрактный компонент. Какого он класса?


 
Сергей.   (2004-08-29 00:45) [9]

TdxBarEdit = class(TdxBarWindowItem)

Hierarchy  

TdxBarWindowItem
 TdxBarItem
   TComponent
     TPersistent
       TObject


 
Сергей.   (2004-08-29 00:48) [10]


> Сергей.   (29.08.04 00:45) [9]


www.devexpress.com


 
GuAV ©   (2004-08-29 00:58) [11]

> Сергей.   (29.08.04 00:45) [9]

И этот прямо в Application вставлен? или error в чём то другом?


 
Petr V. Abramov ©   (2004-08-29 01:04) [12]

А Self.ActiveControl (если мы где-то в обработчике) не помогает?



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

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

Наверх




Память: 0.49 MB
Время: 0.056 c
4-1091021719
Admin
2004-07-28 17:35
2004.09.12
Отключение процессоров


1-1093844218
Ega23
2004-08-30 09:36
2004.09.12
Как методу класса присвоить процедуру?


3-1092363763
rus_lan
2004-08-13 06:22
2004.09.12
ошибка BDE


3-1092436314
Noox
2004-08-14 02:31
2004.09.12
импорт в Paradox


4-1091104667
Dmitry
2004-07-29 16:37
2004.09.12
Как сделать, чтобы моя программа запускалась вместе с Windows