如何隐藏应用程序的任务栏图标
首先,请看看这些术语。系统托盘是一个在任务栏右角的小方框,在托盘了应用程序可以显示小图标。任务栏是可以在屏幕上伸展的工具栏。它就是程序图标所在的位置。想隐藏程序的任务栏图标,你可以应用ShowWindow函数并传给它Application->Handle窗口句柄。
ShowWindow(Application->Handle, SW_HIDE);
若想让任务栏图标再出现,只需将SW_HIDE改为SW_SHOW。
ShowWindow(Application->Handle, SW_SHOW);
注: 你可以设置主窗口的Visible属性为false来隐藏它。
注: 通过ShowWindow来隐藏窗口的任务栏图标是不持久的。某些动作会使任务栏图标重现。你可以将隐藏的应用程序窗口设为ToolWindow来移走程序的任务栏图标而避免它再次出现。Tool windows永远不会有任务栏图标。 使应用程序窗口成为一个ToolWindow有一个副作用:当用户按下Alt-TAB时它将不在程序列表中出现。你可以调用API函数GetWindowLong和SetWindowLong来使应用程序窗口成为一个Tool Window。
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
DWord dwExStyle = GetWindowLong(Application->Handle, GWL_EXSTYLE);
dwExStyle = WS_EX_TOOLWINDOW;
SetWindowLong(Application->Handle, GWL_EXSTYLE, dwExStyle);
try
{
Application->Initialize();
Application->CreateForm(__classid(TForm1), &Form1);
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
return 0;
}