仓库管理系统工程,编译后,所有的窗体有最小化按钮和最大化按钮,可以实现最大化我最小化,设计思想是想让用户不能通过鼠标拉拽改变窗体大小,请问如何实现!   窗体本身有这样的属性或方法吗? 还是需要另写控制代码?

解决方案 »

  1.   

    把窗体的BorderStyle属性设置为1
      

  2.   

    form1.borderstyle = 1, 或者3,4都是固定大小。
      

  3.   

    如果想保留最大回最小化按钮,设置窗体的MaxButton和MinButton属性为True就行了
      

  4.   

    form1.borderstyle = 1, 或者3,4都是固定大小。
      

  5.   

    //所有的窗体有最小化按钮和最大化按钮,可以实现最大化我最小化,设计思想是想让用户不能通过鼠标拉拽改变窗体大小,请问如何实现! 窗体本身有这样的属性或方法吗? 还是需要另写控制代码?看这个完全满足你的要求:Option ExplicitPrivate Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
    Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd 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 SC_SIZE = &HF000&
    Private Const SC_MAXIMIZE = &HF030&
    Private Const SC_MINIMIZE = &HF020&
    Private Const MF_BYCOMMAND = &H0&
    Private Sub Form_Load()
        Dim hSysMenu As Long
        hSysMenu = GetSystemMenu(Me.hwnd, False)
        If hSysMenu Then
            RemoveMenu hSysMenu, SC_SIZE, MF_BYCOMMAND
            DrawMenuBar Me.hwnd
        End If
    End Sub
      

  6.   

    另一种方法是通过setwindowlong修改窗口风格用子类也可以实现
      

  7.   

    关闭两个属性:Maxbutton和Minbutton
      

  8.   

    或干脆关闭clipcontrols,或把窗体设置为固定大小:BorderStyle=1
      

  9.   

    设计属性如下
    BorderStyle = 1
    MaxButton = True
    MinButton = True
      

  10.   

    //设计属性如下
    BorderStyle = 1
    MaxButton = True
    MinButton = True不错,受教,现在想问题都复杂化了,这种设置和我的代码的唯一区别就是,比我的窗体少了一种
    WS_DLGFRAME风格