Форум: "Сети";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.21;
Скачать: [xml.tar.bz2];




Вниз

Вопрос о TThread & TClientSocket 


xmag   (2002-01-04 21:41) [0]

Привет всем !
Есть вопросик. Создаю свой класс типа TTheaв например

type
TTestPort = class(TThread)
ClS : TClientSocket;
. . .

Так вот требуеться в потоке поймать событие от компонента TClientSocket OnConnect , OnDisconnect , OnError и т.д.
Очень нужен простой пример.
Заранее благодарен.



Hacker   (2002-01-05 14:41) [1]

У меня точно такая же задача: TThread & TClientSocket, но заставить создаваться динамически объект там и работать не получается(поток тоже создаю динамически в процедуре). Как что-то получится пришли код на ящик, что-бы я долго не мучался.

А по твоему вопросу: если тебе надо просто обработать событие у динамически создаваемого объекта, то это я обсуждал в основном форуме где-то 03.01.02. А если надо в другом потоке данные оттуда получить, то наверное просто надо создать переменную в первом потоке и ей все скинуть



xmag   (2002-01-05 23:30) [2]

Спасибо я понял что надо обнаботать событие :-) но как ? Можно примерчик или я что-то непонимаю ?-)



Hacker   (2002-01-06 20:59) [3]

Все просто - создаешь в своем новом классе TTestPort (а лучше создай потомок от TClientSocket - так потом удобней) процедуры
type
TTestPort = class(TThread)
Private
Procedure MyRead(тут как у обработчика);
Public
ClS : TClientSocket;

Где создаешь объект пишешь - TestPort.ClientSocket.OnRead:=MyRead;

А в MyRead процедуре пишешь нужный тебе обработчик.
Типа, когда произойдет событие - вызовится твоя процедура, там работаешь как будто ты пишешь обработчик.
Фишка в том - что процедура дожна принадлежать объекту.




Форум: "Сети";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.21;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.024 c
3-66777           Лёша                  2002-02-22 14:26  2002.03.21  
Реализация post_event.


3-66757           Ольга                 2002-02-21 13:54  2002.03.21  
SQL


14-66964          MBo                   2002-02-06 13:07  2002.03.21  
BrainBench


6-66948           Snake                 2002-01-05 13:23  2002.03.21  
Имена пользователей в локалке?


14-66997          McSimm                2002-02-08 11:59  2002.03.21  
Перестановки букв.