用c#做的窗体,当按显示桌面时,该窗体不会在桌面中消失!

发布网友 发布时间:2024-10-01 21:09

我来回答

3个回答

热心网友 时间:2分钟前

先放一个notifyIcon控件,表示图标,比如你说的迅雷图标
//在窗体中找到Deactivate事件,表示窗体最小化,小图标出现
private void form1_Deactivate(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
{
this.Visible = false;
this.notifyIcon1.Visible = true;
}
}
// notifyIcon1控件事件,表示点击任务栏中显示的小图标窗体显示正常的大小
private void notifyIcon1_MouseClick(object sender, MouseEventArgs e)
{
this.Visible = true;
this.WindowState = FormWindowState.Normal;
this.Activate();
this.notifyIcon1.Visible = false;
}

热心网友 时间:6分钟前

在窗体的Deactivate事件中加入:

MessageBox.Show("哥们雄风依旧!");

这样当你的窗体被停用(按下'显示桌面')时就会跳出警告框,确定后窗体依然显示.

热心网友 时间:7分钟前

引用:
using System.Runtime.InteropServices;

在定义部分引入下面两个函数:
[DllImport("user32")]
private static extern IntPtr FindWindow(string lpClassName,string lpWindowName);

[DllImport("user32")]
private static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);

在窗体On_Load事件中添加(Santos的代码):
IntPtr hDeskTop=FindWindow("Progman", "Program Manager");
SetParent(this.Handle,hDeskTop);

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com