Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.031 c
1-1130407173
WondeRu
2005-10-27 13:59
2005.11.20
Как сделать потомка ActiveX формы?


2-1130794011
ArchValentin
2005-11-01 00:26
2005.11.20
Хранение информации разных типов в одном файле


10-1107963374
Grant
2005-02-09 18:36
2005.11.20
RegisterTypeLib


2-1130853359
3JIO
2005-11-01 16:55
2005.11.20
Базы


2-1130949233
Mecter
2005-11-02 19:33
2005.11.20
Смена изображений




   Наверх