2012-05-23 85 views
1

我想創建一個窗口,在不包含Windows開始菜單的情況下填充桌面的整個空間,並且不會使窗口最大化。MFC PreCreateWindow創建一個填充除任務欄外的屏幕的窗口

我認爲代碼應該是這樣的:

BOOL CWnd::PreCreateWindow(CREATESTRUCT& cs) 
{ 
    cs.cx = ::GetSystemMetrics(SM_CXSCREEN); 
    cs.cy = ::GetSystemMetrics(SM_CYSCREEN); // minus start menu height please 

    return CMDIFrameWnd::PreCreateWindow(cs); 
} 

但是我如何才能在開始菜單的高度?謝謝。

+0

您的意思是開始菜單或任務欄?你也想避免停靠的appbars? –

+0

任務欄是。如果可能的話,也可以使用appbars。 –

+0

您是否需要在調用基類的實現之後修改結構? – pelesl

回答

2

要避免任務欄和任何應用程序,您需要填寫工作區域。使用GetMonitorInfo函數並查看rcWork成員。 (請注意,每臺顯示器都有不同的工作區域,因此您需要知道您關心的顯示器。)

相關問題