m_dlg->Create(ID_***, GetDesktopWindow());
...
m_dlg->ShowWindow(SW_SHOW);>>>>>>>>
我已经试过以下:(都不行)
m_dlg->SetWindowPos(&topwndmos, ....)
m_dlg->BringWndToTop()
m_dlg->SetActiveWindow()请勿再提供相同解法,谢谢!
...
m_dlg->ShowWindow(SW_SHOW);>>>>>>>>
我已经试过以下:(都不行)
m_dlg->SetWindowPos(&topwndmos, ....)
m_dlg->BringWndToTop()
m_dlg->SetActiveWindow()请勿再提供相同解法,谢谢!
//***********************************************
void CXXXXXDlg::OnAlwaysOnTop()
{
::SetWindowPos(GetSafeHwnd(), (m_bAlwaysOnTop) ? HWND_TOPMOST : HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); // Check/uncheck the menu item
CMenu *pSysMenu = GetSystemMenu(FALSE);
if(pSysMenu != NULL)
{
UINT nFlags = MF_BYCOMMAND | ((m_bAlwaysOnTop) ? MF_CHECKED : MF_UNCHECKED);
pSysMenu->CheckMenuItem(IDM_ALWAYS_ON_TOP, nFlags);
}
}
HWND_TOP暂时
还有楼上
SetWindowPos(&wndTop, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_SHOWWINDOW);
是错误的
SetWindowPos(&CWnd::wndTop, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE | SWP_SHOWWINDOW);
正确
SetForegroundWindow()倒似乎可以