2013-02-06 2 views
1

winforms 응용 프로그램에서이 작업을 수행하는 방법을 찾는 것이 다소 쉽지만 XNA에서는 의도 한대로 코드 조각을 작동시킬 수 없습니다. 나는 또한 시스템 버튼을 전혀 사용하지 않기를 원치 않는다. 버튼을 최대화하고 최소화해야한다.게임 폼의 닫기 버튼을 숨기는 방법은 무엇입니까?

다른 버튼을 비활성화하지 않고 XNA 게임 양식에서 닫기 버튼 (x)을 비활성화하려면 어떻게합니까?

답변

3

코드에서이 정의

[DllImport("user32.dll")] 
static extern bool EnableMenuItem(IntPtr hMenu, uint uIDEnableItem, uint uEnable); 
[DllImport("user32.dll")] 
static extern IntPtr GetSystemMenu(IntPtr hWnd, bool bRevert); 
internal const UInt32 SC_CLOSE = 0xF060; 
internal const UInt32 MF_ENABLED = 0x00000000; 
internal const UInt32 MF_GRAYED = 0x00000001; 
internal const UInt32 MF_DISABLED = 0x00000002; 
internal const uint MF_BYCOMMAND = 0x00000000; 

그런 다음 닫기 버튼

public void EnableOrDisableCloseButton(bool Enabled) 
{ 
    IntPtr hSystemMenu = GetSystemMenu(this.Window.Handle, false); 
    EnableMenuItem(hSystemMenu, SC_CLOSE, (uint)(MF_ENABLED | (Enabled ? MF_ENABLED : MF_GRAYED))); 
} 
을 사용하거나 사용이 기능을 사용하여
관련 문제