请问如何使MDIForm的最大最小化功能不可用???

jiajy 2003-08-19 06:18:55
请问如何使MDIForm的最大最小化功能不可用??
...全文
64 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zyl910 2003-08-19
  • 打赏
  • 举报
回复
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 Const WS_MINIMIZEBOX = &H20000 '最小化
Private Const WS_MAXIMIZEBOX = &H10000 '最大化
Private Const GWL_STYLE = (-16)


Sub MDIForm_Load()
Dim TempStyle As Long
TempStyle = GetWindowLong(Me.hwnd, GWL_STYLE)
TempStyle = TempStyle And Not WS_MINIMIZEBOX '最小化
TempStyle = TempStyle And Not WS_MAXIMIZEBOX '最大化
Call SetWindowLong(Me.hwnd, GWL_STYLE, TempStyle)
End Sub
chenkangli 2003-08-19
  • 打赏
  • 举报
回复
1)maxbutton = false
minbutton = false
2)Private Declare Function DeleteMenu Lib "user32" Alias "DeleteMenu" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Wang_xiaoni 2003-08-19
  • 打赏
  • 举报
回复
声名API DeleteMenu

DeleteMenu(
HMENU hMenu, // 窗体系统菜单句柄
UINT uPosition,
UINT uFlags // 取 MF_BYCOMMAND
);

uPosition取
SC_MAXIMIZE (or SC_ZOOM)
SC_MINIMIZE (or SC_ICON)
这样会删除掉系统菜单,谁也操作不了
wumy_ld 2003-08-19
  • 打赏
  • 举报
回复
楼主,这样一来你的程序也太不友好了吧
zhuxj7996 2003-08-19
  • 打赏
  • 举报
回复
那是子窗体属性,MDIForm用WindowState的状态决定
WindowState = vbNormal 0 (Default) Normal.
vbMinimized 1 Minimized (minimized to an icon)
vbMaximized 2 Maximized (enlarged to maximum size)
820830 2003-08-19
  • 打赏
  • 举报
回复
maxbutton = false
minbutton = false

7,759

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧