WinForm 最大化、最小化、关闭按钮事件的拦截

private int WM_SYSCOMMAND = 0x112;
private long SC_MAXIMIZE = 0xF030;
private long SC_MINIMIZE = 0xF020;
private long SC_CLOSE = 0xF060;
protected override void WndProc(ref Message m)
{
    if (m.Msg == WM_SYSCOMMAND)
    {
        if (m.WParam.ToInt64() == SC_MAXIMIZE)
        {
            //MessageBox.Show("MAXIMIZE ");
            return;
        }
        if (m.WParam.ToInt64() == SC_MINIMIZE)
        {
            //MessageBox.Show("MINIMIZE ");
            return;
        }
        if (m.WParam.ToInt64() == SC_CLOSE)
        {
            //MessageBox.Show("CLOSE ");
            return;
        }
    }
    base.WndProc(ref m);
}

时间: 2024-08-03 16:21:13

WinForm 最大化、最小化、关闭按钮事件的拦截的相关文章

WinForm实现最小化到系统托盘方法实例详解

  本文实例讲述了WinForm实现最小化到系统托盘方法.分享给大家供大家参考.具体分析如下: 有个叫NotifyIcon的控件 1.建个WinForm项目,其它操作略过. 2.拉个NotifyIcon控件,将属性Visable设置成False,在Text属性上随便填些文件. 3.实现Form的SizeChanged事件,代码如下: ? 1 2 3 4 5 if(this.WindowState == FormWindowState.Minimized) //判断是否最小化 { this.Sho

mfc-MFC的Ondraw函数上加了一些代码后,最大化最小化都会被Asserted?求大神解答!

问题描述 MFC的Ondraw函数上加了一些代码后,最大化最小化都会被Asserted?求大神解答! 加了被注释的代码后就会asserted... void C技能实践View::OnDraw(CDC* pDC) { C技能实践Doc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc) return; // TODO: 在此处为本机数据添加绘制代码 /* static int i = 0; m_chessboard.LoadBitmap(I

Java-如何去掉JFrame上的最大化最小化和关闭按钮(转)

在JDK1.4以前,我们只有一种方式来去掉窗口的标题栏,那就是直接使用JWindow,用JWindow来代替JFrame使用.但用过JWindow的人一定知道,JWindow在操作系统的任务栏是不可见的,这样我们就无法在几个视窗之间来切换到这个窗口了. 使用JWindow也是很多人知道的一种去掉标题栏的方式.但从Java1.4开始,有一种新的方式可以使用,我们来看看. 现在我们创建一个类并继承于JFrame, public class DecoratedFrame extends JFrame

C#实现WinForm窗口最小化到系统托盘

  C#编写最小化时隐藏为任务栏图标的 Window appllication.   1.设置WinForm窗体属性showinTask=false 2.加notifyicon控件notifyIcon1,为控件notifyIcon1的属性Icon添加一个icon图标. 3.添加窗体最小化事件(首先需要添加事件引用): this.SizeChanged += new System.EventHandler(this.Form1_SizeChanged); //上面一行是主窗体InitializeC

C# WinForm窗口最小化到系统托盘_C#教程

1.设置WinForm窗体属性showinTask=false 2.加notifyicon控件notifyIcon1,为控件notifyIcon1的属性Icon添加一个icon图标. 3.添加窗体最小化事件(首先需要添加事件引用): 复制代码 代码如下: this.SizeChanged += new System.EventHandler(this.Form1_SizeChanged); //上面一行是主窗体InitializeComponent()方法中需要添加的引用 private voi

MAC最大化最小化iTunes窗口

  如果你曾经试图点击iTunes窗口上的那个绿色按钮来"最大化"iTunes窗口的话,你一定觉得很失望.跟别的窗口的绿色按钮不同的是,iTunes的绿色按钮会让你的iTunes变成mimiplayer. 其实这个时候你只要按下Command+Control+Z就可以在"最大化"跟"最小化"的窗口间切换了.当然,如果你非要去点那个绿色的按钮的话,试试按下Option建再去点点看.

synth swing jComboBox 及最大化最小化 xml

问题描述 您好:我现在做swing定制外观,用的是synth,在做jcombobox最大化及最小化时碰到问题.请给相关的xml配置谢谢! 解决方案 解决方案二:一头雾水,我可不会!解决方案三:jcombobox最大化及最小化是什么意思?解决方案四:学习帮顶!!!

flash 最大化最小化和关闭

quit 无 关闭放映文件. fullscreen true 或者 false 指定 true 可将 Flash Player 设置为全屏模式.指定 false 可将播放器返回到标准菜单视图. allowscale true 或者 false 指定 false 可设置播放器始终按 SWF 文件的原始大小绘制 SWF 文件,从不进行缩放.指定 true 会强制将 SWF 文件缩放到播放器的 100% 大小. showmenu true 或者 false 指定 true 可启用整个上下文菜单项集合.

隐藏-有没有最小化窗口的事件?

问题描述 有没有最小化窗口的事件? 是这样的,我做一个了仿QQ界面,但是窗体的标题栏和边框都被隐藏了,我就用jlbanl添加图片做了一个关闭和一个最小化的图标代替,但是我只会写关闭的,不会写最小化的事件!求大神帮忙,事件是点击事件~如果可以,大神能不能把鼠标点击事件里最大化的也告诉我,感激不尽~ 解决方案 不知道什么语言,如果是VB C#,设置窗体的WindowState属性就可以了. 如果是其它语言,可以发送wm_syscommand消息实现.wParam指定SC_MINIMIZE. 解决方案