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