0

メッセージが表示されているときに Delphi ShowMessage または MessageDlg を使用すると、プログラムはボタンをクリックするのを待ちます。プログラムが自分自身をブロックするのは好きではありません。プログラムが検索中であることを書いたメッセージを表示する必要がありますが、メッセージが表示されている限り検索が開始されません..どうすればよいですか?

ありがとう、ジャック

ShowMessage('Sto ricercando . . .');
if (cartellaSorgente[Length(cartellaSorgente)] <> '\') then
begin
// do the research
end;
4

1 に答える 1

5

ShowMessageモーダル ダイアログを表示します。これはShowMessage、ダイアログが閉じられるまで呼び出しが返されないことを意味します。

あなたの問題は、UI をブロックせずに長時間実行されるタスクを実行したいということです。これを実現する方法は、長時間実行されるタスクである検索を別のスレッドに入れることです。検索スレッドから UI スレッドにメッセージを送信して、UI が進行状況をユーザーに通知できるようにします。

于 2013-07-15T10:18:19.810 に答える