c# 重载WndProc实现重写“最小化”的实现方法

深山好酒

深山好酒

2016-02-19 09:07

只要你有一台电脑或者手机,都能关注图老师为大家精心推荐的c# 重载WndProc实现重写“最小化”的实现方法,手机电脑控们准备好了吗?一起看过来吧!
code #1
代码如下:

private void Form1_SizeChanged(object sender, EventArgs e) //最小化隐藏窗体
{
if (this.WindowState == FormWindowState.Minimized)//窗体状态为最小化
{
StopRectTimer.Enabled = false;
this.Visible = false;
this.notifyIcon1.Visible = true; //显示系统托盘图标
this.notifyIcon1.Text = this.Text; //设置图标显示的文本
this.ShowInTaskbar = false; //窗体在任务标中隐藏
reghotkey();
打开OToolStripMenuItem.Text = "打开(&O)";
}
}

很显然,如果打开歌词状态话的话,怎样才能最小化而不改变窗体的大小呢?我想到了重载“最小化”,但是怎么重载呢?这里给出一种重载WndProc的方案:
代码如下:

const int WM_SYSCOMMAND = 0x112;
const int SC_CLOSE = 0xF060;
const int SC_MINIMIZE = 0xF020;
const int SC_MAXIMIZE = 0xF030;
protected override void WndProc(ref Message m)
{
if (m.Msg == WM_SYSCOMMAND)
{
if (m.WParam.ToInt32() == SC_MINIMIZE)
{
this.Visible = false;
return;
}
}
base.WndProc(ref m);
}
展开更多 50%)
分享

猜你喜欢

c# 重载WndProc实现重写“最小化”的实现方法

编程语言 网络编程
c# 重载WndProc实现重写“最小化”的实现方法

C#怎样才能实现窗体最小化到托盘呢?

编程语言 网络编程
C#怎样才能实现窗体最小化到托盘呢?

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

vb编程实现将所有窗口最小化

编程语言 网络编程
vb编程实现将所有窗口最小化

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

编程语言 网络编程
C# WinForm窗口最小化到系统托盘

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

用VB实现窗口图标最小化到通知栏

vb
用VB实现窗口图标最小化到通知栏

SQL查询语句对象化的实现(C#)

MySQL mysql数据库
SQL查询语句对象化的实现(C#)

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

c# 托盘双击不触发单击事件的实现方法

c# 托盘双击不触发单击事件的实现方法

Excel里去掉最高分最低分再求平均分

Excel里去掉最高分最低分再求平均分
下拉加载更多内容 ↓