C# winfor m怎么在窗口最小化时完美的隐藏
现在的做法和网上流行的的那种一样
最小化时能看到左下角一个小窗口,很不美.
现在的做法和网上流行的的那种一样
最小化时能看到左下角一个小窗口,很不美.
解决方案 »
- 新手问题:在Timer里调用pictureBox1的图片报错:未将对象引用设置到对象的实例。
- 请问学习c#如果想学asp,需要学习windows编程这一块吗?
- c# winform 2008安装部署,开机第一次运行出现的怪像,求解。
- 验证码问题
- 有一控件我使用了其MouseDown事件后我又想使用其DoubleClick事件该怎么做?
- 用C#写上传程序要怎么写!!
- ?????菜鸟不太了解C#里SqlDataReader和SqlDataAdapter这两个东西有什么区别,请高手用自己的语言通俗易懂的讲一下。。。
- 数据库比较的问题??
- 如何能用C#做DLL,并且使之能在VC++6.0下调用啊??
- 新增记录的问题
- winForm 实现歌曲置顶功能 第一次能成功 第二次就乱了 请大家看看
- 《C#入门经典》和《C#本质论》哪本适合初学者自学?
看来你没有试,试了就知道我说什么了
但是这样有一个不太完美的事情,你没有发现吗?
与托盘没太大关系,(托盘从程序打开就在,并切一直在,像QQ)
这个是一个简单活计,并不困难。
WM_SYSCOMMAND
SC_MINIMIZE
DrawAnimatedRectsps:qq其实也是用了DrawAnimatedRects这个api滴,默认情况下缩入托盘区的动作比较古怪,他是先左下角,然后在入托盘。所以很多程序员都是自己使用这个api,重新绘制动态效果以达到直接入托盘的效果
protected override void WndProc(ref Message m)
{
const int WM_SYSCOMMAND = 0x0112;
const int SC_MINIMIZE = 0xF020;
if (WM_SYSCOMMAND ==m.Msg)
{
int msg = (int)m.WParam;
switch (msg)
{
case SC_MINIMIZE:
this.Hide();
break;
}
}
base.WndProc(ref m);
}这样写反而隐藏不了了?
{
if (m.Msg == 0x112 && m.WParam.ToInt32() == 0xF020)
{
this.Hide();
return;//吃掉消息
}
base.WndProc(ref m);
}