Public Class Form1
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As Long
Const GWL_STYLE = (-16)
Const WS_SYSMENU = &H80000 Private Sub RemoveSysButton(ByVal hHwnd As Long)
Dim lWnd As Long
lWnd = GetWindowLong(hHwnd, GWL_STYLE)
lWnd = lWnd And Not (WS_SYSMENU)
lWnd = SetWindowLong(hHwnd, GWL_STYLE, lWnd)
DrawMenuBar(hHwnd)
End Sub Private Sub Form1_Load()
RemoveSysButton(me.hHwnd)
End Sub
End Class
这是我在网上找的代码,但是总是出错,说:hHwnd is not a member of form1
请问下是怎么回事。
另外我用的是VB 2005 Express Edition.
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As Long
Const GWL_STYLE = (-16)
Const WS_SYSMENU = &H80000 Private Sub RemoveSysButton(ByVal hHwnd As Long)
Dim lWnd As Long
lWnd = GetWindowLong(hHwnd, GWL_STYLE)
lWnd = lWnd And Not (WS_SYSMENU)
lWnd = SetWindowLong(hHwnd, GWL_STYLE, lWnd)
DrawMenuBar(hHwnd)
End Sub Private Sub Form1_Load()
RemoveSysButton(me.hHwnd)
End Sub
End Class
这是我在网上找的代码,但是总是出错,说:hHwnd is not a member of form1
请问下是怎么回事。
另外我用的是VB 2005 Express Edition.
解决方案 »
- 关于printer.PaintPicture的问题
- 在同一天,如已经复制过同样内则弹出对话框提示
- 关于MSFlexGrid控件里按鼠标右键问题
- VB数据库查询的问题
- 7天没干别的,尽伺候他了。帮我看看怎样制作这个安装文件。
- 韩磊,没头脑,请问你们把那些政治帖留着是为了CSDN再一次被关闭吗?
- 有谁给我一个 IJL11.DLL 的用法,谢谢100分
- 西欧语言 在中文版win2k上的 输入和输出
- 响应了N次DataArrival事件后才算接受到一个完整的数据包,如何在得到全部数据后再触发数据处理过程
- 有做过Crystal Report的吗?能不能简单的介绍一下?功能用途?谢谢哦!
- TabStrip 的文字我要向下,怎么设置?像word的字体、字号、黑体、斜体、对齐这样的按钮,有没有免费的控件?
- mshflexgrid里的指定数据替换方法
http://download.csdn.net/source/565913
对了,在VB6里,这里:
Private Sub Form1_Load()
RemoveSysButton(me.hHwnd)
End Sub 应是:
Private Sub Form_Load()
RemoveSysButton(me.Hwnd)
End Sub
难道网上的代码都是给vb6用的
vb2005都不行。
RemoveSysButton(me.hHwnd)
RemoveSysButton(me.Hwnd)
两句都是,is not a member of form1
Dim lWnd As Long
lWnd = GetWindowLong(hHwnd, GWL_STYLE)
lWnd = lWnd And Not (WS_SYSMENU)
lWnd = SetWindowLong(hHwnd, GWL_STYLE, lWnd)
DrawMenuBar(hHwnd)
End Sub Private Sub Form1_Load()
RemoveSysButton(me.hHwnd)
End Sub 标为红色和有下划线的地方统统改成HWND...应该就OK了... 如果还不行,那就说明你AV看少了,不够淫荡
这里这个
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
网上找的,这个正点... 居然是直接把默认的菜单里的"关闭"菜单项目给移除了... REMOVEMENU 这个东东早点让我发现以前就不至于画那个东西那么辛苦 了
有没有vb2005能用的亚。