2011-12-28 158 views
2

有誰知道它是否真的可以設置窗口的高度,使其大於使用C#的屏幕大小?設置窗口高度大於屏幕高度

我試了幾個窗口是這樣的:

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

但是,他們從來沒有走過去的屏幕尺寸 - 有沒有解決的辦法?

+0

[這是類似的東西](http://stackoverflow.com/questions/2344615/how-to-increase-window-height-longer-than-the-screen-height-in-applescript)。雖然對蘋果公司來說,我認爲這同樣適用於Windows。 – 2011-12-28 13:01:32

+0

我認爲最大高度是由'WM_WINDOWPOSCHANGING'處理程序強制執行的,所以如果你可以覆蓋窗口過程,那麼你可以調用默認的窗口過程,然後在返回之前改變返回值。也就是說,你把它標記爲「console-application」,我認爲你不能覆蓋控制檯窗口的窗口過程。 – 2011-12-28 13:29:14

+0

[Visual Studio設計器中窗體的大小是否限於屏幕分辨率?](http://stackoverflow.com/questions/6651115/is-the-size-of-a-form-in-visual-工作室設計師限制屏幕分辨率) – 2011-12-28 13:33:04

回答

1

沒有它雖然你正在使用Form.Size財產SetWindowPos MSDN文檔不允許說:

此屬性的最大值限制在屏幕上,其形式運行的分辨率。該值在每個屏幕尺寸(水平+12和垂直+12)上不能大於12像素。

+0

我也使用過'MoveWindow',這也不起作用。還有其他的選擇嗎? – Abs 2011-12-28 13:24:43

+0

@Abs一種替代似乎在[這個答案]中提到(http://stackoverflow.com/a/6651523/399722),它建議在表單中使用Panel。 – 2011-12-28 13:31:42

相關問題