2011-12-28 21 views
2

C#を使用して画面のサイズよりも大きなウィンドウの高さを実際に設定できるかどうかは知っていますか?ウィンドウの高さを画面の高さよりも大きく設定する

私はいくつかのウィンドウ上でこのような何かを試してみました:

SetWindowPos(handle, new IntPtr(0), 0, 0, 1024, 4000, 
      SetWindowPosFlags.SWP_SHOWWINDOW); 

しかし、彼らは、画面サイズを過ぎて行くことはありません - これを回避する方法はありますか?あなたはForm.Size性質上SetWindowPos MSDNのドキュメントを使用しているがありませんその許可されていない

+0

[これは類似しています](http://stackoverflow.com/questions/2344615/how-to-increase-window-height-longer-than-the-screen-height-in-applescript)。アップルのためではあるが、私は同じことがWindowsにも当てはまると思う。 –

+0

私は最大の高さが 'WM_WINDOWPOSCHANGING'ハンドラによって強制されると思うので、あなたがウィンドウプロシージャをオーバーライドできるならば、あなたはデフォルトのウィンドウprocを呼び出してから、戻り値を変更して戻ることができます。つまり、これを「コンソールアプリケーション」とタグ付けしました。コンソールウィンドウのウィンドウprocをオーバーライドすることはできません。 –

+0

[Visual Studioデザイナーのフォームのサイズは画面の解像度に制限されていますか?](http://stackoverflow.com/questions/6651115/is-the-size-of-a-form-in-visual-スタジオデザイナー限定画面解像度) –

答えて

1

は言う:

このプロパティの最大値は、フォームが実行されている画面の解像度によって限られています。この値は、各画面の寸法(水平+ 12および垂直+ 12)に対して12ピクセルを超えることはできません。

+0

私も 'MoveWindow'を使用しましたが、それも動作しません。他の選択肢はありますか? – Abs

+0

@Abs 1つの選択肢は、このフォームでパネルを使用することを示唆している[この回答(http://stackoverflow.com/a/6651523/399722)に記載されているようです。 –