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

Работа с TImage   Найти похожие ветки 

 
terra   (2003-10-02 14:11) [0]

Подскажите, как правльно работать с Image, если я хочу использовать рисунок, как кнопку. (Предположим у меня одна кнопка и 3-и рисунка: нормальное состояние, курсор над кнопкой и кнопка нажата.) Дело в том, что кнопок несколько, и если я обрабатываю одно событие, как общее для всех кнопок (OnMouseMove), то мне приходится перерисовывать все кнопки и это явно заметно на форме.
Может есть другой выход? Просто раньше никогда особо не занимался интерфейсом.


 
ZEE ©   (2003-10-02 14:16) [1]

у OnMouseMove есть Sender - он ссілается на тот объект который сгенерил событие
т.е. тебе надо будет там писать что-то типа
TImage(Sender).Picture.LoadFromFile(...);
ну или
TImage(Sender).Picture.Assign(...);


 
Rem ©   (2003-10-02 14:18) [2]

1. Определяй по параметру Sender того, кто послал сообщение, и перерисовывай только его.
2. Или создай свой компонент (что предпочтительнее).
3. Или используй SpeedButton.


 
terra   (2003-10-02 14:53) [3]

Дело в том что, о Sender я естесственно знаю, в вопросе было указано, что я делаю одну функцию для всех кнопок. Но когда я покидаю (мышью) кнопку она, само собой, остается перерисованной.
Если можно подскажите как создать свой компонент на основе сушествующего (конечно же в двух словах), с чего начать?


 
ZEE ©   (2003-10-02 14:56) [4]

ну дык надо к TImage присобачить CM_MOUSEENTER и CM_MOUSELEAVE ...



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

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



Память: 0.45 MB
Время: 0.053 c
11-40331
Victor_
2003-02-01 09:40
2003.10.13
Проблема с таймером


1-40489
Sectey
2003-10-01 17:01
2003.10.13
Система автоматического обнавления программы.


1-40370
delpher_gray
2003-10-01 13:32
2003.10.13
Загрузка строк неизвестного размера из TMemoryStream


14-40598
Александр999
2003-09-25 07:09
2003.10.13
Опять модемы.........


4-40730
Onyx
2003-08-08 13:08
2003.10.13
КОНТЕКСТНОЕ МЕНЮ!!!




   Наверх