0

別のコンピューターにリモート接続するアプリケーションを設計しています。接続時に NSAlertPanel を表示したいのですが、通常の NSAlertPanel セットアップで [OK] が押されるまで、リモート側がセッションを続行することを「ブロック」しています。

ノンブロッキングの NSAlertPanel を持つ方法はありますか? ありがとう。

4

1 に答える 1

0

アラート パネルをモーダルに実行すると、関連付けられたスレッド (この場合はメイン スレッド) の実行ループがブロックされます。

接続時にウィンドウを表示するには、カスタム シートを使用できます。使い方は簡単で、以下のドキュメント ページで説明されています。

https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/Sheets/Tasks/UsingCustomSheets.html

ただし、アラートをモーダルに実行する必要がある場合 (アプリケーション全体との対話をブロックするアラート) は、接続部分を別のスレッドに移動する必要がある場合があります。これは、どちらの場合でも適切な方法です。

于 2012-08-27T07:14:21.503 に答える