2010-12-08 4 views
4

ユーザーが十字ボタンをクリックしてプログラムを閉じるか、ALT + F4キーを押して閉じるかを検出するC#XNAゲームの方法はありますか?XNAゲームでOnExitのようなメソッドを実装するにはどうすればいいですか?

KeyBoardStateからALT + F4キーが検出されている可能性がありますが、ウィンドウを閉じるために十字ボタンのクリックを検出するにはどうすればよいですか?私は、ユーザーが任意の手段を介してゲームを閉じたときに実行されているすべてのスレッドをシャットダウンすることができるように

は、私は音楽を作る近いゲームはまだプレイするとき、私は現在、いくつかのスレッドがまだ実行されている。これを必要とする:Pを

は..ゲームが(おそらくあまりにもZuneの)両方のこれらのプラットフォーム上で実行することになっているような方法は、WindowsとXbox 360互換性、両方なければならないこと

+0

可能重複http://stackoverflow.com/questions/2997323/how-do-i-check-if-ゲーム終了) –

答えて

8

の点に注意してください。どちらのGameまたはsusbcribeへのOnExitingメソッドをオーバーライドしてくださいそのExitingイベント。

例:

protected override void OnExiting(Object sender, EventArgs args) 
{ 
    base.OnExiting(sender, args); 

    // Stop the threads 
} 
[?ゲームが閉じられた場合、私はチェックするにはどうすればよい]の(
+0

例を挙げることができますか?私はゲーム継承したクラスでこのコードを書いてみました.. – Ahmad

+0

保護された仮想ボイドOnExiting( オブジェクト送信者、 いるEventArgs argsを ) { timeToQuit =はtrue。 Exit(); } – Ahmad

+0

最初の命令にブレークポイントを設定してから、ゲームを実行して、ALT + F4を押して、ブレークポイントに移動したかどうかを確認してください。ゲームは自然に閉じました..これは、上記のコードではなく、ウィンドウコマンドを閉じるためにウィンドウコマンドを終了するために、ウィンドウコマンドALT + F4を終了しました。 – Ahmad

関連する問題