![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| кварк |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 2.8.2002 Репутация: нет Всего: нет |
Начало в топике form&thread.
Так вот: если в цикле потока вызывать refresh формы, то отображается все, вроде как надо. Но сама форма не реагирует на внешние раздражители. Вопрос: где у формы искать процедуру - обработчик событий? |
|||
|
||||
| Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: 48 Всего: 207 |
Что-то я не понял вопроса. Можно пример кода?
-------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
| Dapo |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 417 Регистрация: 18.4.2002 Репутация: нет Всего: 1 |
Да поток у тебя не правильно написан скорее всего. Такая элементарная операция, вообще может обойтись и без синхронизации. Сделай проще, в TThread.Execute напиши
i:=0; FreeOnTerminate; While not Terminate do begin form^.memo1.Add(Inttostr(i)); inc(i); Sleep(100); if i=100 then Terminate; end; Вроде так должно работать. |
|||
|
||||
| кварк |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 2.8.2002 Репутация: нет Всего: нет |
Спасибо - буду пробовать.
Мда. Вчера сделал по-другому: в OnClick создаются два потока: один показывает форму, другой - делает работу и передает то, что сделал в эту форму. Общаются они через указатели. Чуствую излишнюю сложность этого решения, но "самый быстрый путь в отсутствие умных советов - это как умеешь". А насчет обработчика событий - когда создается окно в Windows, ему назначается процедура, которая будет обрабатывать события. А в Дельфи доступны предопределенные события. То есть процедуры и функции, которые, по идее, вызываются из функции-обработчика событий окна. Я спрашивал про эту оконную функцию. |
|||
|
||||
| Fantasist |
|
||||
|
Лентяй ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1517 Регистрация: 24.3.2002 Репутация: нет Всего: 41 |
Да скорее всего так и надо. Если только никто из другого потока не будет менять Memo.Lines. кварк: Такая форма использовани: form^.memo1 очень редка, потому как переменные классов в Delphi и есть указатели. То есть обычно это выглядит так:
-------------------- Волны гасят ветер... |
||||
|
|||||
| Dapo |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 417 Регистрация: 18.4.2002 Репутация: нет Всего: 1 |
Извини, конечно, но если ты имеешь в виду процедуру окна, тогда это WNDPROC. Но я не понимаю на какой болт она тебе нужна? |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |