0

ポップアップウィンドウが表示される時間を与えるために、一部のプロセスが開始する前にsleepメソッドを使用しようとしました。

    Processmethod()
{

    QDialog *ProcessMessage = new QDialog;      
    Ui::DialogProcessMessage Dialog;            
    Dialog.setupUi(ProcessMessage);             
    ProcessMessage->setModal(true);
    ProcessMessage->setAttribute(Qt::WA_DeleteOnClose); 
    ProcessMessage->show();

    sleep(500);

    PROCESSES START                     
}

私の問題は、プロセスが開始する前ではなく、プロセスが終了した直後にポップアップウィンドウが表示されることです。ウィンドウが表示された後に開始する必要があるプロセスを非アクティブ化すると、ポップアップウィンドウは正常に機能します。ポップアップウィンドウの原因となるプロセスは失敗しますか?私のせいはどこですか?あいさつ

4

2 に答える 2

3

追加

qApp->processEvents();

スリープコールの前。

于 2012-03-21T11:54:22.857 に答える
1

sleepWindows関数だと思いますか?使用しないでください。QTimer後でプロセスを開始するために使用します。

ProcessMessage->show();
QTimer::singleShot(500, processObject, SLOT(start()));
于 2012-03-21T12:25:12.660 に答える