![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Странная проблема с ShowMessage [D7, XP]
Alex_C © (2007-11-21 13:56:00)У меня в отдельном TThred'е выполняются некоторые действия. И если пользователю нужно выдать сообщение, использовал ShowMessage. Однако он появлялся на экране не в обычную величину, а то во весь экран, то с бесконечной шириной, выходящей за пределы экрана. При замене его на Windows.Messagebox - все ок!
Я так понимаю, тут проблема в том что нить обращалась при вызове ShowMessage к основному потоку или нет?
Alex_C (2007-11-21 19:41:00) [1]Ок! Всем спасибо за объяснение причины!
Amoeba (2007-11-21 15:38:00) [2]
> Я так понимаю, тут проблема в том что нить обращалась при
> вызове ShowMessage к основному потоку или нет?
Правильно понимаешь. Если обращаться к VCL в доп. потоке, то это можно делать только через Synchronize.
tesseract (2007-11-21 14:01:00) [3]
> Я так понимаю, тут проблема в том что нить обращалась при
> вызове ShowMessage к основному потоку или нет?
Да. В потоках работать с GUI вообще не рекомендуеться. Лучше посылай сообщение основному потоку, пусть он показывает, что нужно.
Сергей М. (2007-11-21 14:01:00) [4]Вызов ShowMessage в доп.потоке недопустим.