X xwf_lj Unregistered / Unconfirmed GUEST, unregistred user! 2008-12-03 #1 在DELPHI2007中,在一个MDI窗体中使用了线程,比如说在线程中showmessage(form1.caption),没有反应,如果窗体中有Progress控件,也无法使用进度。 线程单元也USES 了窗体名,这是怎么回事?
在DELPHI2007中,在一个MDI窗体中使用了线程,比如说在线程中showmessage(form1.caption),没有反应,如果窗体中有Progress控件,也无法使用进度。 线程单元也USES 了窗体名,这是怎么回事?
H hfghfghfg Unregistered / Unconfirmed GUEST, unregistred user! 2008-12-04 #4 线程中showmessage(form1.caption)? 你尽量 不要有这种交互 Synchronize 也不行吗? 你看看 delphi 自带的那个 demo Progress控件?? Self.Update; Application.ProcessMessages; ?
线程中showmessage(form1.caption)? 你尽量 不要有这种交互 Synchronize 也不行吗? 你看看 delphi 自带的那个 demo Progress控件?? Self.Update; Application.ProcessMessages; ?
I iamy Unregistered / Unconfirmed GUEST, unregistred user! 2008-12-09 #5 尽量不要在线程中显示窗体!!! 因为窗体的显示是基于消息泵的 消息泵通常位于主线程中!!!! 你可以通过消息让主线程来显示对话框 SendMessage(Form1.Handle,你定义的消息); 如果一定要在线程中显示对话框用这个函数 Windows.MessageBox(0,'标题','文本', mb_ok)
尽量不要在线程中显示窗体!!! 因为窗体的显示是基于消息泵的 消息泵通常位于主线程中!!!! 你可以通过消息让主线程来显示对话框 SendMessage(Form1.Handle,你定义的消息); 如果一定要在线程中显示对话框用这个函数 Windows.MessageBox(0,'标题','文本', mb_ok)