Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.13;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.021 c
7-40708
XenonXX
2003-07-28 04:25
2003.10.13
SetSystemTime


14-40652
Digitman
2003-09-23 16:15
2003.10.13
Любопытная (и неприятная) проблема с DLL и run-time packages


14-40614
k-man
2003-09-24 20:41
2003.10.13
WinApi


4-40722
k@rt
2003-08-08 20:33
2003.10.13
EDIT во все окно


4-40753
andre
2003-08-10 02:37
2003.10.13
Меню в трее.