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

Вниз

Проблема с созданием компонента!   Найти похожие ветки 

 
Gennadiy ©   (2005-03-25 14:53) [0]

Добрый день!
У меня такая проблема я на основе демонстрационного исходника по сканированию пытаюсь создат компонент для сканирования, так вот в исходнике есть такая процедура
procedure TForm1.MyMsg(var Msg: TMsg; var Handled: Boolean);
begin
 Handled := ProcessSourceMessage(Msg);
end;
и она вызывается при открытии формы во так:
procedure TForm1.FormCreate(Sender: TObject);
begin
 Application.OnMessage := MyMsg;
end;

а проблема в том когда я переношу вот эту строку    Application.OnMessage := MyMsg;
он ругается что Application не найден что в общем логично потому что компонент не является Application, и у меня вопрос как не использовать Application, но чтобы было такой же по смыслу код??


 
Плохиш ©   (2005-03-25 15:08) [1]


>и она вызывается при открытии формы во так:
>procedure TForm1.FormCreate(Sender: TObject);
>begin
> Application.OnMessage := MyMsg;
>end;

Она здесь не вызывается, а присваивается как обработчик события OnMessage.

А из твоего вопросо непонятно, что ты хочешь сделать.

Хотя :-) может быть достаточно присвоить эту функцию OnMessage экземпляру твоей компоненты.


 
Gennadiy ©   (2005-03-25 15:10) [2]

ПРисвоить я не знаю как потому что Родителський компонент является TWinControl, а у него нету функции OnMessage


 
Юрий Зотов ©   (2005-03-25 15:19) [3]

> Gennadiy

Добавьте в uses модуль Forms - появится Application. Но в данном случае это плохой способ, потому что пользователь Вашего компонента запросто может назначить свой собственный обработчик события Application.OnMessage и компонент работать перестанет.

Зато компонент может поставить локальный хук и таким образом перехватить любые сообщения.


 
Плохиш ©   (2005-03-25 15:20) [4]

В примере из [0] описано создание своей функции обработки сообщений и использование её в программе. Что тебе нужно, известно только тебе, а телепаты все в отпуске.


 
Плохиш ©   (2005-03-25 15:22) [5]


>Юрий Зотов ©   (25.03.05 15:19) [3]

Не все в отпуске :-)



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

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

Наверх




Память: 0.48 MB
Время: 0.06 c
2-1130842380
stud
2005-11-01 13:53
2005.11.20
запуск нескольких программ в консоли


1-1130077478
users
2005-10-23 18:24
2005.11.20
Чем упаковать несколько файлов в один архив, не используя DLL ?


2-1130924775
Cvin
2005-11-02 12:46
2005.11.20
Минимизировать форму на панель задач


14-1129951854
alexmix
2005-10-22 07:30
2005.11.20
Нужен компонент для мониторинга


14-1130779512
worldmen
2005-10-31 20:25
2005.11.20
Рабочий стол. Win98