Application.ExitThread()を呼び出す必要がありますか?

アレクサンダーアレクサンドロビッチクリモフ
using System.Windows.Forms;

public class App
{
    [STAThread]
    public static void Main()
    {
        string fname;
        using (var d = new OpenFileDialog())
        {
            if (d.ShowDialog() != DialogResult.OK)
            {
                return;
            }
            fname = d.FileName;
        }
        //Application.ExitThread();
        for (; ;)
            ;
    }
}

上記のコードはファイルダイアログを示しています。ファイルを選択してを押すopenと、forループが実行されますが、(フリーズされた)ダイアログは残ります。

コメントを外すとApplication.ExitThread()、期待どおりにダイアログが消えます。

それは意図したとおりに機能しますか?なぜusingウィンドウが消えないのですか?これに関する詳細情報はどこにありますか?

アレクサンダーアレクサンドロビッチクリモフ

いいえ、電話する必要はありませんApplication.ExitThread()

Application.ExitThread()呼び出し元のスレッドのメッセージループを終了し、フリーズしたダイアログを強制的に破棄します。「それは機能します」が、フリーズの原因がわかっている場合は、ダイアログのフリーズを解除することをお勧めします。

この場合、押すopenと、終了する機会がないクローズイベントが発生するようです。Application.DoEvents()そのチャンスを与え、ダイアログを非表示にします。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

OpenID Connect with Native Desktop ApplicationにPKCEを使用する必要がありますか?

分類Dev

NSURLConnectionがconnectionDidFinishLoadingを呼び出す必要がありますか?

分類Dev

HttpURLConnection:connect()を呼び出す必要がありますか?

分類Dev

removeMouseListener()を呼び出す必要がありますか?

分類Dev

いつglDeleteBuffers()を呼び出す必要がありますか?

分類Dev

pthread_exit()を呼び出す必要がありますか

分類Dev

CloseHandleを呼び出す必要がありますか?

分類Dev

定期的にsvnadminpackを呼び出す必要がありますか

分類Dev

notifyObservers呼び出しを同期する必要がありますか?

分類Dev

DynamoDB-shutdown()を呼び出す必要がありますか?

分類Dev

AngularでngOnInit()を再度呼び出す必要がありますか?

分類Dev

CloseHandleを呼び出す必要がありますか?

分類Dev

CGContextSaveGStateとCGContextRestoreGStateを呼び出す必要がありますか?

分類Dev

JPanelでsetDoubleBufferedを呼び出す必要がありますか?

分類Dev

Application.Run VBAでカスタム関数を呼び出す際のBERTエラー「このブックでマクロが使用できないか、すべてのマクロが無効になっている可能性があります。」

分類Dev

Application.Calculateを呼び出すと、編集中の数式が壊れます

分類Dev

SaveChangesを1回呼び出すか、変更するたびに呼び出す必要がありますか?

分類Dev

Object = Application.Exit呼び出しの直前には何も意味がありませんか?

分類Dev

Application.onCreate()が呼び出されるプロセスを決定します

分類Dev

setInterval()を呼び出す前にclearInterval()を呼び出す必要があります

分類Dev

getGraph()を呼び出す前に、setGraph()を呼び出す必要があります

分類Dev

SQLExecdirectを呼び出す前に、SQLAllocHandleを呼び出してSQLHSTMTを割り当てる必要がありますか?

分類Dev

Integer.hashCode()を呼び出す必要がある理由はありますか?

分類Dev

VAO を使用する場合、glEnableVertexAttribArray を呼び出す必要がありますか?

分類Dev

* sql.Tx.Rollback()を呼び出す前に* sql.Rows.Close()を呼び出す必要がありますか?

分類Dev

使用する前にMessageDigest.reset()を呼び出す必要がありますか?

分類Dev

別のAppServiceからAppServiceを呼び出す必要がありますか?

分類Dev

phpからjavascriptまたはjqueryを呼び出す必要があります

分類Dev

BeginPeekを使用した後、EndPeekを呼び出す必要がありますか?

Related 関連記事

  1. 1

    OpenID Connect with Native Desktop ApplicationにPKCEを使用する必要がありますか?

  2. 2

    NSURLConnectionがconnectionDidFinishLoadingを呼び出す必要がありますか?

  3. 3

    HttpURLConnection:connect()を呼び出す必要がありますか?

  4. 4

    removeMouseListener()を呼び出す必要がありますか?

  5. 5

    いつglDeleteBuffers()を呼び出す必要がありますか?

  6. 6

    pthread_exit()を呼び出す必要がありますか

  7. 7

    CloseHandleを呼び出す必要がありますか?

  8. 8

    定期的にsvnadminpackを呼び出す必要がありますか

  9. 9

    notifyObservers呼び出しを同期する必要がありますか?

  10. 10

    DynamoDB-shutdown()を呼び出す必要がありますか?

  11. 11

    AngularでngOnInit()を再度呼び出す必要がありますか?

  12. 12

    CloseHandleを呼び出す必要がありますか?

  13. 13

    CGContextSaveGStateとCGContextRestoreGStateを呼び出す必要がありますか?

  14. 14

    JPanelでsetDoubleBufferedを呼び出す必要がありますか?

  15. 15

    Application.Run VBAでカスタム関数を呼び出す際のBERTエラー「このブックでマクロが使用できないか、すべてのマクロが無効になっている可能性があります。」

  16. 16

    Application.Calculateを呼び出すと、編集中の数式が壊れます

  17. 17

    SaveChangesを1回呼び出すか、変更するたびに呼び出す必要がありますか?

  18. 18

    Object = Application.Exit呼び出しの直前には何も意味がありませんか?

  19. 19

    Application.onCreate()が呼び出されるプロセスを決定します

  20. 20

    setInterval()を呼び出す前にclearInterval()を呼び出す必要があります

  21. 21

    getGraph()を呼び出す前に、setGraph()を呼び出す必要があります

  22. 22

    SQLExecdirectを呼び出す前に、SQLAllocHandleを呼び出してSQLHSTMTを割り当てる必要がありますか?

  23. 23

    Integer.hashCode()を呼び出す必要がある理由はありますか?

  24. 24

    VAO を使用する場合、glEnableVertexAttribArray を呼び出す必要がありますか?

  25. 25

    * sql.Tx.Rollback()を呼び出す前に* sql.Rows.Close()を呼び出す必要がありますか?

  26. 26

    使用する前にMessageDigest.reset()を呼び出す必要がありますか?

  27. 27

    別のAppServiceからAppServiceを呼び出す必要がありますか?

  28. 28

    phpからjavascriptまたはjqueryを呼び出す必要があります

  29. 29

    BeginPeekを使用した後、EndPeekを呼び出す必要がありますか?

ホットタグ

アーカイブ