怎么让MDI窗体的最大化,最小化按钮不可用,用API函数怎么做,不用API怎么做?

解决方案 »

  1.   

    MinButton,MaxButton=False MDIChild=True
      

  2.   

    用api的话,用setwindowlong修改窗体的风格就可以了(当然,移除系统菜单也可),具体的你自己搜索一下吧,这样的帖子太多了
      

  3.   

    to:dongge2000(秋日私语) ( ) 
    MDI没有MinButton,MaxButton属性的,你试试再说好吗?
    to:rainstormmaster(暴风雨 v2.0) ( 
    用API的贴子多是多,但我没找到,请给源代码好吗?谢谢!!
      

  4.   

    让最大化和最小化按钮消失声明:
    Private Declare Function SetWindowLong Lib "user32" _
    Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal _
    nIndex As Long, ByVal dwNewLong As Long) As LongPrivate Declare Function GetWindowLong Lib "user32" _
    Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal _
    nIndex As Long) As Long
    Const WS_MINIMIZEBOX = &H20000
    Const WS_MAXIMIZEBOX = &H10000
    Const GWL_STYLE = (-16)
    使用:
    Private Sub Form_Load()
    Dim lWnd As Long
    lWnd = GetWindowLong(Me.hwnd, GWL_STYLE)lWnd = lWnd And Not (WS_MINIMIZEBOX) 
    lWnd = lWnd And Not (WS_MAXIMIZEBOX) 
    lWnd = SetWindowLong(Me.hwnd, GWL_STYLE, lWnd)
    End Sub
      

  5.   

    基于删除系统菜单实现的:
    Option Explicit
    Private Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
    Private Declare Function DeleteMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
    Private Const SC_MAXIMIZE = &HF030&
    Private Const SC_MINIMIZE = &HF020&
    Private Const SC_RESTORE = &HF120&
    Private Const MF_BYCOMMAND = &H0&
    Private Sub Form_Load()
        Dim hMenu As Long
        hMenu = GetSystemMenu(Me.hwnd, 0)
        Call DeleteMenu(hMenu, SC_MAXIMIZE, MF_BYCOMMAND)
        Call DeleteMenu(hMenu, SC_MINIMIZE, MF_BYCOMMAND)
        Call DeleteMenu(hMenu, SC_RESTORE, MF_BYCOMMAND)
    End Sub
      

  6.   

    rainstormmaster(暴风雨 v2.0) 
    你的第一种方法,删掉最大化,最小化按钮不行,虽然删掉了,但还可以用,第二种方法,这种比较好一些。谢谢你的参与。