您的位置:首页 > 编程语言 > VB

vb.net禁止程序窗口的“关闭”按钮(转载+亲自实践)

2013-08-28 11:30 531 查看

vb.net写程序,生成的窗口默认右上角都有最大化,最小化和关闭按钮

其中最大化和最小化按钮可以通过窗口的属性直接删除

有时候需要将“关闭”按钮禁止,

可以通过编写简单程序实现。

具体方法如下:

新建一个名叫common.vb的文件,将以下内容写入其中,

方便其他窗口调用

PublicClassCommon
PrivateDeclareFunctionGetSystemMenuLib"User32"(ByValhwndAsInteger,ByValbRevertAsLong)AsInteger

PrivateDeclareFunctionRemoveMenuLib"User32"(ByValhMenuAsInteger,ByValnPositionAsInteger,ByValwFlagsAsInteger)AsInteger

PrivateDeclareFunctionDrawMenuBarLib"User32"(ByValhwndAsInteger)AsInteger

PrivateDeclareFunctionGetMenuItemCountLib"User32"(ByValhMenuAsInteger)AsInteger

PrivateConstMF_BYPOSITION=&H400&

PrivateConstMF_DISABLED=&H2&

'禁用窗口右上角的“关闭”按钮
PublicSubDisableCloseButton(ByValwndAsForm)

DimhMenuAsInteger,nCountAsInteger

'得到系统Menu

hMenu=GetSystemMenu(wnd.Handle.ToInt32,0)

'得到系统Menu的个数

nCount=GetMenuItemCount(hMenu)

'去除系统Menu

CallRemoveMenu(hMenu,nCount-1,MF_BYPOSITIONOrMF_DISABLED)

'重画MenuBar

DrawMenuBar(wnd.Handle.ToInt32)

EndSub

EndClass


然后在需要该功能的窗口的Load方法中调用DisableCloseButton方法

PublicSubFormChangePassWord_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load

Me.Visible=True

common.DisableCloseButton(Me)

EndSub
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: