看板 C_and_CPP 關於我們 聯絡資訊
我想用MFC寫一支程式,只有dialog。 我想要讓他永遠顯示在最上層,即使是用工作管理員把其他程式調上來 也能夠在維持在最上層。 我想到的方法是在收到 WM_KILLFOCUS 訊息 的時候 用this->SetFocus() 讓他保持在最上面,可是失敗了,我在dialog裡面是這樣寫的: BOOL xxxxx::PreTranslateMessage(MSG* pMsg) { switch(pMsg->message){ case WM_KILLFOCUS: this->SetFocus(); break; } return CDialog::PreTranslateMessage(pMsg); } 可是沒有作用,是不是我寫錯位置,還是說這個方法根本不可行呢? 謝謝大家的幫忙! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.96.186.76
qazq:Dialog Create 後 .... 09/15 09:39
qazq:SetWindowPos(hDlg, HWND_TOPMOST,0,0,0,0,SWP_SHOWWINDOW) 09/15 09:40
VictorTom:小弟覺得這種事有難度說, 您可曾想過同時執行兩個您的 09/15 09:45
VictorTom:dialog時, 那它們哪一個要在上面?? 09/15 09:45
worldxxi:好像有道理 會變成無窮迴圈也無所謂 就是一定要在最上面 09/15 10:17
worldxxi:q大,好像沒用耶,另一個topmost還是可以覆蓋 09/15 10:18