0); return RemoveMenu(iSysMenu

时间:2022-04-18 08:15:01

本文实例讲述了C#中Winform窗体Form的*按钮变灰色的要领,对C#措施设计有必然的借鉴价值,分享给大家供大家参考之用。具体要领如下:

主要成果代码如下:

[ DllImport ( "USER32.DLL" ) ] public static extern int GetSystemMenu(int hwnd, int bRevert); [ DllImport ( "USER32.DLL" ) ] public static extern int RemoveMenu(int hMenu, int nPosition, int wFlags); /// <summary> /// 返回值,非零暗示告成,零暗示掉败。 /// </summary> /// <param>窗口的句柄</param> /// <returns>是否告成</returns> public int RemoveXButton(int iHWND) { int iSysMenu; const int MF_BYCOMMAND = 0x400; //0x400-* iSysMenu = GetSystemMenu(this.Handle.ToInt32(), 0); return RemoveMenu(iSysMenu, 6, MF_BYCOMMAND); } private void Form1_Load(object sender, EventArgs e) { //通过函数返回值就可以判断目的是否到达,在结构函数里面可以这样判断: int iReturn = RemoveXButton(this.Handle.ToInt32()); if (iReturn == 0) //返回值非零暗示告成,,零暗示掉败。 { MessageBox.Show("Error!"); } else { MessageBox.Show("Success!"); } }