Foxtable(狐表)用户栏目专家坐堂 → [求助]主窗口最小化拦截


  共有631人关注过本帖树形打印复制链接

主题:[求助]主窗口最小化拦截

帅哥哟,离线,有人找我吗?
张松波
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:79 积分:825 威望:0 精华:0 注册:2018/2/3 13:10:00
[求助]主窗口最小化拦截  发帖心情 Post By:2024/1/17 9:14:00 [只看该作者]

老师,我想阻断BaseMainForm的最小化让其变成透明而不是最小化状态,以下代码,请帮忙看看哪里写错了,谢谢。
Public Class MainForm
    Inherits System.Windows.Forms.Form

    Const WM_SYSCOMMAND As Long = &H112
    Const SC_MINIMIZE As Long = &HF020
    
    Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
        If m.Msg = WM_SYSCOMMAND AndAlso m.WParam.ToInt32() = SC_MINIMIZE AndAlso BaseMainForm.CanFocus AndAlso Application.OpenForms.Count = 1 Then
            BaseMainForm.Opacity = 0
            Return
        End If
        MyBase.WndProc(m)
    End Sub
End Class

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107147 积分:544978 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/1/17 9:25:00 [只看该作者]

做不到的。

上面代码只能拦截MainForm的最小化,和BaseMainForm没有什么关系。要继承BaseMainForm才行(如Inherits BaseMainForm),但是BaseMainForm是无法继承的,就算能继承了也用不了了。

 回到顶部