好吧我正在使用此代码隐藏基于对话框的MFC应用程序(VC++)的任务栏图标.每当我点击十字或关闭按钮时,任务栏图标和对话框都会隐藏.但我不能把这一件事弄好.每当我从标题栏点击关闭或十字按钮时,对话框首先闪烁并显示一种中间对话框,然后隐藏.这非常烦人.经过两天徒劳的努力,我在这里发布我的代码.所以伙计们请帮助我.提前致谢.
void CMyAppDlg::OnBnClickedCancel()
{
// TODO: Add your control notification handler code here
CWnd* pWnd;
pWnd = AfxGetMainWnd();
RemoveTaskbarIcon(pWnd);
pWnd->ModifyStyle(WS_VISIBLE, 0);
mVisible = FALSE;
}
BOOL CMyAppDlg::RemoveTaskbarIcon(CWnd* pWnd)
{
LPCTSTR pstrOwnerClass = AfxRegisterWndClass(0);
// Create static invisible window
if (!::IsWindow(mWndInvisible.m_hWnd))
{
if (!mWndInvisible.CreateEx(0, pstrOwnerClass, _T(""),
WS_POPUP,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL, 0))
return FALSE;
}
pWnd->SetParent(&mWndInvisible);
return TRUE;
}
Run Code Online (Sandbox Code Playgroud)