2012-03-06 68 views
1

我如何創建一個無法調整大小或恢復的最大化形式? 我試着用:曾經最大化的形式VC++

this->WindowState = System::Windows::Forms::FormWindowState::Maximized; 
    this->MaximizeBox = false; 

但如果我單擊窗體欄上,然後我拖累了,它被恢復,另外,如果我雙擊它的酒吧是恢復上。

你能幫我嗎?

+0

不要設置WindowState,只需在Screens類中設置Size。 – 2012-03-08 02:09:18

回答

0

試試這個:

this->FormBorderStyle = System::Windows::Forms::FormBorderStyle::None; 

標題欄和邊框會消失這樣,你的應用程序會出現全屏顯示。

或者,如果你想保持標題欄:

 WindowState = FormWindowState::Normal; 
     this->Width = Screen::FromControl(this)->Bounds->Width; 
     this->Height = Screen::FromControl(this)->Bounds->Height; 
     this->WindowState = FormWindowState::Maximized; 
     this->FormBorderStyle = System::Windows::Forms::FormBorderStyle::FixedSingle; 

用戶仍然可以雖然拖動窗口(這是標題欄是什麼)。 然後,您可能需要設置MaximizeBox = true,以便用戶可以在窗口拖動到其他位置時輕鬆恢復全屏。

如果您想阻止用戶移動窗口,您可以爲窗口的Move事件分配一個事件處理程序,並將WindowState再次設置爲最大化。

+0

這是一個好主意,但如果我想保持酒吧? – user1169770 2012-03-06 19:34:30

+0

好的,更新了我的答案。 – Botz3000 2012-03-06 19:51:20

+0

謝謝,但不是無論如何禁用拖動工具欄的大小調整?因爲我的應用程序僅適用於全屏... – user1169770 2012-03-06 20:45:05