c++/mfc 怎么实现类似任务管理器中的“切换”功能?或者跟据进程ID来恢复窗口
c++/mfc 如何实现类似任务管理器中的“切换”功能?或者跟据进程ID来恢复窗口
c++/mfc 如何实现类似任务管理器中的“切换”功能?或者跟据进程ID来恢复窗口
------解决方案--------------------
枚举窗口,拿到句柄和id,然后发消息
------解决方案--------------------
楼上是一种解决方法,建议到MFC区提问。
------解决方案--------------------
c++/mfc 如何实现类似任务管理器中的“切换”功能?或者跟据进程ID来恢复窗口
------解决方案--------------------
枚举窗口,拿到句柄和id,然后发消息
------解决方案--------------------
楼上是一种解决方法,建议到MFC区提问。
------解决方案--------------------
- C/C++ code
void CTaskPage::OnBnClickedSwitchto() { CString iSelectedText; POSITION pos = m_taskList.GetFirstSelectedItemPosition(); if (pos == NULL ) { TCHAR szMsg[MAX_PATH]; ::LoadString(m_hModule, IDS_CHOICEONECOL, szMsg, MAX_PATH); MessageBox(szMsg); } else { int iSelectedID = (int)m_taskList.GetNextSelectedItem(pos); TASK_DATA* pSwitchItem = (TASK_DATA *)m_taskList.GetItemData(iSelectedID); ::SetForegroundWindow(pSwitchItem->hWnd); ::ShowWindow(pSwitchItem->hWnd, SW_RESTORE); CTaskMgrDlg* pTaskMgrDlg = (CTaskMgrDlg*)GetParent(); if (pTaskMgrDlg->m_bSwitchMinmize ) { pTaskMgrDlg->ShowWindow(SW_MINIMIZE); } } }
------解决方案--------------------
HWND hWnd = ::FindWindow( "ClassName", "CaptionName" );
::ShowWindow(hWnd ,SW_RESTORE);
::SetForegroundWindow( hWnd );