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

Вопрос по TLabel   Найти похожие ветки 

 
Sergei   (2003-03-14 09:21) [0]

Здравствуйте
Такой вопрос
Как сделать к примеру ассоциацию TLabel c определенным компонентом что бы при попадание фокус на Контрол сама метка меняла цвет (для быстрого визуалного определения активного контрола) а при потере фокуса изменяла на исходный цвет

Необходмио как-нибудь в общем виде (т.е без привязки к имени TLabel) что бы на каждый TLabel не прописывать один и тот же код ????


 
GAlexandr   (2003-03-14 09:35) [1]

Напиши компонент производный от TLabel и пользуй его хоть сто раз!


 
Юрий Зотов ©   (2003-03-14 09:37) [2]

1. Каждой метке через ее свойство FocusControl сопоставьте свой контрол. В Caption меток можно использовать амперсанды для прямой навигация по контролам с клавиатуры (Alt+буква).

2. В обработчике OnEnter (одном для всех) напишите:

for i := 0 to ComponentCount - 1 do
if (Components[i] is TLabel) and
(TLabel(Components[i]).FocusControl = Sender) then
begin
TLabel(Components[i]).Font.Color := clRed; // По вкусу
Break
end

3. В обработчике OnExit (одном для всех) напишите то же самое, только присвойте шрифту метки исходный цвет.


 
Юрий Зотов ©   (2003-03-14 09:42) [3]

> GAlexandr (14.03.03 09:35)
Можете предложить простой механизм обратной связи?


 
REA ©   (2003-03-14 09:46) [4]

А этот TLabeledEdit.EditLabel.Owner


 
BillyJeans ©   (2003-03-14 09:49) [5]

procedure FocusControl(Control: TWinControl);


 
Sergei   (2003-03-14 10:14) [6]

> to All
Спасибо всем особенно Юрию Зотову :))



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

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



Память: 0.46 MB
Время: 0.011 c
1-88048
homo sapiens
2003-03-12 11:15
2003.03.27
Scheduler


14-88194
Alexsys
2003-03-11 08:55
2003.03.27
Литература по TCP, портам и т.д.


4-88294
Anton
2003-01-30 11:21
2003.03.27
Можно ли закрыть другое приложение из своей программы


1-87987
andrey_pst
2003-03-18 09:28
2003.03.27
Какая конструкция работает быстрее


1-87995
Тундра
2003-03-13 09:54
2003.03.27
ExcelApplication




   Наверх