如果我在显示消息时使用delphi ShowMessage或MessageDlg,程序会等待按钮中的单击,我不希望程序阻止自己.我需要显示一条消息,我写的程序正在搜索,但只要显示消息,搜索就无法启动..我该怎么办?
谢谢,杰克
ShowMessage('Sto ricercando . . .');
if (cartellaSorgente[Length(cartellaSorgente)] <> '\') then
begin
// do the research
end;
Run Code Online (Sandbox Code Playgroud)
ShowMessage显示模态对话框.这意味着ShowMessage在对话框关闭之前调用不会返回.
您的问题是您希望在不阻止UI的情况下执行长时间运行的任务.实现这一目标的方法是将长时间运行的任务(搜索)放入一个单独的线程中.将消息从搜索线程发送到UI线程,以允许UI通知用户进度.