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

Вниз

компонент не на форме   Найти похожие ветки 

 
Olexander   (2003-09-09 21:55) [0]

Привет!

Чайниковский вопрос
Хочу поместить компонент (Aync Pro) не на форме - а включить его в поток.
обявляю
type
TRWthread = class(TThread)
apd1 : TApdComPort;
...

вопрос - как мне определить обработчики его событий ??
если нету Object Inspectora ??

спасибо


 
HolACost! ©   (2003-09-09 22:02) [1]

Присвоить - в классе делаешь метод с такимже надором параметров и при присваиваешь его (меод) событию
apd1.OnLamerEnter := TRWthread.EtotSamiyObrabotchikSobitia // Метод класса TRWthread


 
Guerrillero ©   (2003-09-09 22:03) [2]

Объявляешь процедуру с теми же параметрами, что и событие.
А дальше Apd1.OnMessagу := OnMyMessage;
Только процедура обязательно должна быть с теми же параметрами и быть методом класса !


 
Olexander   (2003-09-10 01:16) [3]

Параметры такие:
ApdComPort1TriggerData(CP: TObject; TriggerHandle: Word);

обявляю:
type
TRWthread = class(TThread)
apd1 : TApdComPort;
procedure ApdComPort1TriggerData(CP: TObject; TriggerHandle: Word);


присаиваю:
constructor TRWthread.create(createsuspended:boolean);
begin
inherited create(createsuspended);
apd1 := TApdComport.Create(nil);
apd1.OnTriggerAvail := TRWthread.ApdComPort1TriggerData(CP: TObject; TriggerHandle: Word);
end;


в СР можно передать нил, а где взять TriggerHandle ??


 
KSergey ©   (2003-09-10 08:29) [4]

http://www.delphikingdom.com/helloworld/runtime_comp.htm


 
Reindeer Moss Eater ©   (2003-09-10 08:41) [5]

TapdComPort неудобно использовать во вторичных потоках


 
Olexander   (2003-09-10 12:24) [6]

А чем неудобно ??
Нормально ли будет писать из вторичного - читать (из порта) - в основном ??

Какие еще варианты ?

Спасибо


 
Reindeer Moss Eater ©   (2003-09-10 12:33) [7]

Я сказал неудобно, а не невозможно.

Если писать код, событийно ориентированный, то вторичный поток становится ненужен.
Кроме того, поток, создавший вторичный поток в котором создан ApdComPort обязан обрабатывать сообщения. Это значит, что в нем нельзя вызывать функции синхронизации (WaitFor....Object).
Отсюда вытекает необходимость писать в вызывающем потоке цикл ожидания с обработкой сообщений поступающих из потока в котором работает ApdComPort.



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
1-71611
ShtuKos
2003-09-09 12:37
2003.09.22
Как сделать, чтоб прогу нельзя было копировать на другие компьюте


1-71660
Andy BitOff
2003-09-08 16:27
2003.09.22
RunTime error 216


8-71770
WInAPi Lamer
2003-05-19 13:40
2003.09.22
DelpiX problemmmmm in fullscreen


8-71762
tytus
2003-05-21 20:03
2003.09.22
BitMap


14-71908
race1
2003-09-03 13:44
2003.09.22
професси разные...