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

Вниз

OnMouseDown   Найти похожие ветки 

 
rOOse ©   (2005-07-29 19:42) [0]

Как в своем компоненте сделать чтобы при нажатии на него сразу же загружался какой нибудь код? н:р форма закрывалась.


 
GLFox ©   (2005-07-29 19:50) [1]

О чем вопрос то?


 
rOOse ©   (2005-07-29 20:02) [2]

Вопрос в том чтобы в своем компоненте не было property OnMouseDown а при нажатии на него запускался какой-нибудь код.


 
Наиль   (2005-07-29 20:18) [3]

Никогда не работал с КОЛ, но сомневаюсь что по этой части он отличается от стандартного написания компонент (дай, Бог, не ошибится). В стандандартных компонентах это выглядит так:

interface
...
TMyCompanent=Class(...)
procedure WMMouseDown(message:TMessage); message WM_MouseDown;
End;
implimentation
...
TMyCompanent.WMMouseDown(...);
Begin
inherited;
Твой код
End;
end;

В скобках должен быть соответсвующий тип вместо TMessage.
Кроме того, я могу ошибиться с WM_... (пишу по памяти)
Но для наводки этого должно быть достаточно.


 
ECM ©   (2005-07-29 22:52) [4]

Никогда не работал с КОЛ, но сомневаюсь что по этой части он отличается от стандартного написания компонент (дай, Бог, не ошибится).
Бог не дал... :)
В KOL использование классов не отвечает "основной идеологии",
хотя и возможно... Здесь все на "старой объектной модели" (Object)... И, ИМХО, динамические методы для обработки сообщений здесь не применимы...
Для получения требуемой функциональности (если OnMouseDown нежелательно светить в инспекторе) нужно будет написать свою окнонную функцию, например:

function WndProcMouseDown(Self_: PControl; var Msg: TMsg; var Rslt: Integer): Boolean;
begin
 Result := False;
 if Msg.Message = WM_L(R)BUTTONDOWN then begin
   ...// Твой код
   Result := TRUE;
 end;
end;

Затем через AttachProc необходимо добавить этот обработчик в функции NewXXXXX(...) создающей твой компонент...
Более подробные примеры см. в KOL.PAS...:)


 
Thaddy   (2005-07-30 02:12) [5]

Or alternatively use the standard OnMessage handler with WM_LBUTTONDOWN.
KOL has actually more possibilities to handle this nicely than the VCL has!
But ECM's option is preferred.



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

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

Наверх




Память: 0.47 MB
Время: 0.064 c
2-1142145894
Glex
2006-03-12 09:44
2006.03.26
Какой движок БД не требует никаких библиотек после компиляции?


15-1140906187
Лорд Байрон
2006-02-26 01:23
2006.03.26
Форматирование диска


2-1141226299
KyRo
2006-03-01 18:18
2006.03.26
Ado Table


11-1122833928
Thaddy
2005-07-31 22:18
2006.03.26
kol skype demo


15-1141385636
Rule
2006-03-03 14:33
2006.03.26
Как расшарить СОМ-порт по сети