0

戻るボタンを押しても、アプリの背景がまだ残っています。これを防ぐために私に何ができるか知っている人はいますか?Application.Exit() を使用すると、機能します。

よろしくお願いしますスタックオーバーフローが大好きです:)

4

4 に答える 4

2

戻るボタンは、Windows Mobile Professional または Classic (ポケット PC) デバイスには通常存在しない Windows Mobile Standard (スマートフォン) 機能です。

ネイティブ OS レベルでは、「戻るボタンとその他の興味深いボタン」というタイトルの次の MSDN 記事で、デフォルトの動作とそれをオーバーライドまたは変更する方法について説明しています。

.NET CF 環境内では、MSDN で入手可能な記事「 How to: Override the Smartphone Back Key 」を参照してください。たとえば、フォーム クラス内では、次のようなことができるはずです。

// Connect an event handler to the KeyPress event
this.KeyPress += new KeyPressEventHandler(OnKeyPress);

private void OnKeyPress(object sender, KeyPressEventArgs ke)
{
    // Determine if ESC key value is pressed.
    if (ke.KeyChar == (Char)Keys.Escape)
    {
        // Handle the event to provide functionality.
        ke.Handled = true;

        // Add your event handling code here.
        MessageBox.Show("Back key was pressed.");
    }
}
于 2009-10-21T21:42:09.737 に答える
0

「戻るボタン」が何を意味するのか正確にはわかりませんが、すべてのアプリの Windows Mobile のデフォルトの動作は、標準の Windows の「閉じる」ボタンになるアプリの「X」ボタンが実際に動作することです。 「最小化」のように、アプリをバックグラウンドに移動します。

アプリケーションを実際に「閉じる」には、通常、Windows モバイル タスク マネージャーに移動して、アプリケーションを終了します。

于 2009-10-08T20:25:29.530 に答える
0

Windows Mobile では、通常、プロセスを終了しません。[×]ボタンでアプリを閉じるときや、ホーム画面に移動するときは、アプリを起動したままにしておくのが一般的です。

Windows Mobile のアプリは、ハード ディスクから RAM にコピーされないため、それほど多くのメモリを必要としません。同じ RAM スポットにとどまり、「アクティブ」になったのは今だけです。当然のことながら、アプリがフォーカスされていないときはリソースをできるだけ少なくして、適切に動作する必要があります。

この動作が望ましくない場合は、フォームがフォーカスを失ったときにアプリケーションを終了できます ( Application.Exit() )。これは、LostFocus イベントで簡単にキャッチできます。

私のデバイスの「戻るボタン」は、赤い電話が印刷されたものである可能性がありますか?

于 2009-10-21T21:55:47.093 に答える
0

ネイティブ関数AllKeysを使用して true に設定するとForm.KeyPreview、ユーザーがハードウェア キーを押したときに KeyDown イベントを受け取ることができます。フォームに KeyDown イベント ハンドラーを追加し、KeyDown ハンドラーにブレークポイントを配置し、[戻る] ボタンを押して の値を調べますKeyEventArgs.KeyCode。true に設定KeyEventArgs.Handledすると、ハードウェア キーの押下が Windows Mobile によって処理されないようにすることができます。

PInvoke 情報は次のとおりです。

[DllImport("coredll.dll", SetLastError = true)]
static extern bool AllKeys(bool bAllKeys);

AllKeys(true) を呼び出して、ハードウェア キーの KeyDown イベントを受け取ります。AllKeys(false) を呼び出して、ハードウェア キーの KeyDown イベントの受信を停止します。この機能に関する公式ドキュメントはありませんが、Pocket PC 2003 から存在しています。詳細については、こちらを参照してください。

于 2009-10-09T15:53:36.353 に答える