vb 如何使系统菜单的“关闭”按钮变灰

vb如何使系统菜单的“关闭”按钮变灰使系统菜单的“关闭”按钮变灰就是不能使用。。。不是让它消失?我的问题是让“关闭”变成灰色的。不是没有掉。。。。A... vb 如何使系统菜单的“关闭”按钮变灰

使系统菜单的“关闭”按钮变灰就是不能使用。。。 不是让它消失?

我的问题是让“关闭”变成灰色的 。不是 没有 掉。。。。
A
展开
 我来答
limingshu6688
2009-08-15 · TA获得超过786个赞
知道小有建树答主
回答量:213
采纳率:100%
帮助的人:0
展开全部
我的代码是让“关闭”按钮失效:

Private Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Private Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Private Const MF_BYPOSITION = &H400&
Private Const MF_REMOVE = &H1000&
Private Const SC_CLOSE = &HF060&

Private Sub Form_Load()
RemoveMenu GetSystemMenu(Me.hwnd, 0), SC_CLOSE, MF_REMOVE
End Sub
高山之澍93
2009-08-10 · TA获得超过237个赞
知道小有建树答主
回答量:83
采纳率:0%
帮助的人:103万
展开全部
这个效果可以使用系统API实现:

在项目中添加一个Module

其中代码如下:

Public Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Public Declare Function DeleteMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Public Const MF_BYPOSITION = &H400&

Public Sub RemoveMenus(FormName As Form)

Dim hMenu As Long
'获取窗口菜单的句柄
hMenu = GetSystemMenu(FormName.hwnd, False)

'操作右键点击标题栏探出菜单

DeleteMenu hMenu, 6, MF_BYPOSITION

End Sub

然后在需要去掉关闭按钮功能的窗体的Form_load事件中添加:

RemoveMenus Me

就可以了 。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wann3344520
2009-08-13 · 超过40用户采纳过TA的回答
知道答主
回答量:251
采纳率:0%
帮助的人:158万
展开全部
可以让 关闭按钮失效,再 form_unload 里写

Cancel = -1 这样做,可以免去多余的代码,几个词就搞定,好看不如好用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友cd90280c4
2009-08-14 · TA获得超过197个赞
知道答主
回答量:168
采纳率:0%
帮助的人:0
展开全部
VB在这里有Bug
即使处理了,窗体一激活就失效了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式