void MainWindow::ShowFullScreen(BOOL bFull)
{
LPARAM lParam;
int iShowState;
if (bFull == TRUE)
{
//任务栏自动隐藏
lParam = ABS_AUTOHIDE;
iShowState = SW_HIDE;
ui->maxButton->hide();
ui->minButton->hide();
ui->closeButton->hide();
showMaximized();
}
else
{
lParam = ABS_ALWAYSONTOP;
iShowState = SW_SHOW;
ui->maxButton->show();
ui->minButton->show();
ui->closeButton->show();
showNormal();
}
//通过任务栏句柄设置显示状态
APPBARDATA apBar;
memset(&apBar, 0, sizeof(apBar));
apBar.cbSize = sizeof(apBar);
apBar.hWnd = FindWindow(L"Shell_TrayWnd", NULL);
if (apBar.hWnd != NULL)
{
apBar.lParam = lParam;
SHAppBarMessage(ABM_SETSTATE, &apBar);
ShowWindow(apBar.hWnd, iShowState);
}
}