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

Вниз

"Подвисание" MDI формы   Найти похожие ветки 

 
MikePol   (2004-04-06 11:42) [0]

Идет постоянный вывод в MDI окно. При нажатии мыши на рамке этого окна, вывод прекращается на некоторое время, а потом опять возлбновляется. Можно ли как нибудь этого избежать ?
Заранее благодарен.


 
TUser ©   (2004-04-06 12:07) [1]

А если вывести выведение данных в отдельный поток, поможет?


 
Rule ©   (2004-04-06 12:27) [2]

ПОПРОБУЙ В ОТДЕЛЬНОЕ ОКНО ИЛИ КОГДА ИДЕТ ПОСТОЯННЫЙ ВЫВОД ВСТАВЬ
Application.processmesages


 
MikePol   (2004-04-06 13:00) [3]

Я наверное неправильно выразился..
По таймеру идет опрос устройства.(через 10мс)
Главная форма посылает сообщения Сhild"ам чтобы они обновили данные. После того, как на рамке Child формы удерживать кнопку мыши, вывод прекращается на некоторое время, а потом опять возобновляется. Потоки использовать не желательно, но если без них нельзя то ....
Может кто-нибудь сталкивался


 
TUser ©   (2004-04-06 13:13) [4]

Надо опрос устройства в отд. поток запихать. И пусть этот поток через sleep(10) посылает сообщ. основному потоку - типа пиши то-то и то-то. Во-первых таймер - он не точный, а во-вторых так лучше будет.


 
MikePol   (2004-04-07 13:09) [5]

Спасибо .


 
MikePol   (2004-04-07 13:28) [6]

TUser :
Это помогло, но если поток синхронизировать, получается то же самое. А без синхронизации нельзя


 
TUser ©   (2004-04-07 14:39) [7]

А как и с чем ты его синхронизируешь?


 
MikePol   (2004-04-07 14:47) [8]

Поток опрашивает устройство. Я делаю
procedure TMyThread.Execute;
begin
while not Terminated do
  begin
   Self.Synchronize(Self.DoUpdate);
   sleep(10);
  end;
end;
По DoUpdate просылаются сообщения (SendMessage) всем MDI формам обновиться.
Если синхронизацию убрать, при закрытии MDI происходит ошибка.


 
TUser ©   (2004-04-07 15:00) [9]

А зачем им sendMessAGE? Если надо что-то на форме изобразить - так и пиши
  with form1 do begin
  Label1.caption;="""";
  progressbar1.position:=1289;
  end;


 
MikePol   (2004-04-07 15:39) [10]

Да. Может ты и прав. :)


 
MikePol   (2004-04-08 13:49) [11]

Но проблема не исчезла ... По SYnchronize происходит обновление данных в MDI формах. При нажатии мыши, опять происходит подвисание. Причем подвешивается и поток обновления данных, вследстие Synchronize. Что делать то ?



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

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

Наверх




Память: 0.49 MB
Время: 0.022 c
8-1074160766
booblik
2004-01-15 12:59
2004.04.25
Как узнать что курсор внутри изображения кривой формы?


14-1080974831
Knight
2004-04-03 10:47
2004.04.25
Кто знает где обитают мастера по ремонту оборудования?


1-1081217402
GreatMaster
2004-04-06 06:10
2004.04.25
Поддержка нац. языков при вводе текста в контрол - как?


3-1080750989
ZSergey
2004-03-31 20:36
2004.04.25
Как правильно передать параметру в запросе строку ...?


8-1073769307
DDA
2004-01-11 00:15
2004.04.25
прозрачный круг по середине TImage