c#实现隐藏与显示任务栏的方法详解
时间:2023-05-27 11:59:04
1.导入System.Runtime.InteropServices命名空间。
2.API函数ShowWindow()能够控制人和窗体的现实状态,其声明格式如下:
[DllImport("user32.dll")]
public static extern int ShowWindow(int hwnd,int nCmdShow);
其中hwnd表示窗体的句柄,nCmdShow表示窗体的现实状态。
3.API函数FindWindow()可用于返回任务栏所在窗体类“Shell_TrayWnd”句柄,其声明格式如下:
[DllImport("user32.dll")]
public static extern int FindWindow(string lpClassName,string lpWindowName);
实例如下,主要代码为(使用了2个btn控件):
private const int SW_HIDE = 0; //隐藏任务栏
private const int SW_RESTORE = 9;//显示任务栏
[DllImport("user32.dll")]
public static extern int ShowWindow(int hwnd,int nCmdShow);
[DllImport("user32.dll")]
public static extern int FindWindow(string lpClassName,string lpWindowName);
private void button1_Click(object sender, EventArgs e)
{
ShowWindow(FindWindow("Shell_TrayWnd",null),SW_HIDE);
//YinYiNiao's Blog
}
private void button2_Click(object sender, EventArgs e)
{
ShowWindow(FindWindow("Shell_TrayWnd",null),SW_RESTORE);
}