rt

解决方案 »

  1.   

    在FORM_RESIZE事件中检测到窗体最小化就马上还原
      

  2.   

    vansoft(Vansoft Workroom)
    正解
      

  3.   

    可以用MSGHOOK32来拦截WM_WINDOWPOSCHANGED消息实现吧。。
      

  4.   

    刚才弄了个测试,VB被我弄崩溃了。没有随时保存代码的习惯。。服了,把重新写的代码贴一下吧,去吃饭了Private Const WM_WINDOWPOSCHANGED = &H47
    Dim mBoo As Boolean
    Private Sub Form_Load()
            Msghook1.HwndHook = Form1.hWnd
            ' 将Msghook1绑定到Form1上
            Msghook1.Message(WM_WINDOWPOSCHANGED) = True
            ' Msghook1拦截WM_SYSCOMMAND消息
    End SubPrivate Sub Msghook1_Message(ByVal msg As Long, ByVal wp As Long, ByVal lp As Long, result As Long)mBoo = Not mBoo
    If wp = 0 And lp = 1244628 And mBoo Then
        MsgBox "最小化消息进入"
    End If
     Call Msghook1.InvokeWindowProc(msg, wp, lp)
    End Sub添加一个MSGHOOK32控件晕了,和刚才测试有点区别,刚才测试的时候,弹出对话框时窗体还没最小化,现在怎么就已经最小化才MSGBOX 呢。。
    走了走了
      

  5.   

    Private Sub Form_Resize()
    If Me.WindowState = vbMinimized Then Me.WindowState = vbNormal
    End Sub
    呵呵 这样也行
      

  6.   

    把 BorderStyle 设为 1 -Fixed Single
    就OK 了
      

  7.   

    最简单的方法....标题栏设置为 0
    设置窗体有顶端属性,或者 Setwindowpos(用不用这个,没怎么试验..但我的情况是用了)