2009-03-13 17 views

答えて

1

私は、それはまだポケットPC 2002と呼ばれていたので、これは日付—のうち方法かもしれないが、その時点で、これは中Xをクリックするためのデフォルトの動作でしたバックウィンドウモバイル—を使用していたので、それはしばらくしていますアプリの右上に表示されます。終了するのではなく、アプリはバックグラウンドで送信されます。私はそれが変わったそれを取る?

+0

私は同意します。 WinCEはWindowsのクライアントまたはサーバーとは異なります。 –

+0

私は "最小化"と "閉じる"の間の "OK"ボタンの動作を変更するForm.MinimizeBoxプロパティについて知っています。私が探しているのは、コードでフォームを最小化する方法です。 –

0

アクティブフォームでHide()を呼び出します。

+0

Windows Mobileではフォームが見えなくなるので、これは私が探している動作ではありません。それはもはやアプリを見ていない。私は実際にコードで "前のプロセス"に戻る方法を探しています。 –

+0

よくWinMoはウィンドウの最小化状態を持っていません。それが「目に見えない」とはどういう意味ですか?フォームを非表示にすると、今日の画面がZオーダーで表示されていないか、または他のプロセスが終了していない限り、最後に表示されたフォームが一番上に表示されます。 – ctacke

0

私は、一般的なひるみ(4.2および5.0)に開発していますので、私は私の解決策は、あなたのWindows Mobileの問題のために働くかはわかりません。

私たちのフォームでは、(タスクバーを隠すことを含めて)画面全体を占有する必要があり、タイトルバーがなく、コードを最小限に抑えることができ、最小化するとアプリケーションアイコンがタスクバーに表示される復元する)、アプリケーションスタック上の前のプログラムに焦点を当てます。それはあまりにも悪い音はしませんが、実際には私はいくつかのトリッキーが必要と同時にすべての要件を満たすことができませんでした。

コンパクトなフレームワークにForm.Minimize()はありません。

  • Form.Hide()私にはこのアプリケーションを復元する方法はありませんでした。 P/Invoking ShowWindow(Form.Handle, 6)、ここで6 = SW_MINIMIZEはアプリケーションをタスクバーに最小限に抑えますが、Form.FormBorderStyle = Normal(Noneではなく)の場合にのみアプリケーションのタイトルバーが表示されます。
  • 最大化の代わりにForm.WindowState = Normalを設定する必要がありました。これは、アプリが最小化されたときに直ちに復元されます。

最後に、私が望むものを得るために以下をまとめました。それは手動で画面を塗りつぶし、余分な高さでアプリケーションのサイズを設定するので、アプリケーションを傾けて表示可能な画面からタイトルバーを移動することができました。アプリはタスクバーを非表示にするイベントを復元インターセプト

public class MyForm 
{ 
    public MyForm() 
    { 
    InitializeComponent(); 

    NativeMethods.HideTaskbar(); 
    FormBorderStyle = FormBorderStyle.FixedSingle; 
    WindowState = FormWindowState.Normal; 
    Rectangle screenBounds = Screen.PrimaryScreen.Bounds; 
    int taskBarHeight = SystemInformation.MenuHeight; 
    NativeMethods.MoveWindow(Handle, 
           0, -taskBarHeight, 
           screenBounds.Width, screenBounds.Height + taskBarHeight); 
    } 

    public void HandleMinimize() 
    { 
    NativeMethods.ShowTaskBar(); 
    NativeMethods.ShowWindow(Handle, WindowShowStyle.Minimize); 
    } 

は道より複雑だったと元の著者は、タスクバーは言及しなかったので、私はそれに入ることはありません。

すべての静的NativeMethodsクラスメソッドは、P/Invokeステートメントのラッパーです。これらの実装の詳細については、http://www.pinvoke.netのcoredllセクションを参照してください。

関連する問題