作者worldxxi (风)
看板C_and_CPP
标题[问题] 请问如何在topmost的一群视窗中始终保持最上层
时间Mon Sep 14 14:42:04 2009
我想用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
1F:→ qazq:Dialog Create 後 .... 09/15 09:39
2F:→ qazq:SetWindowPos(hDlg, HWND_TOPMOST,0,0,0,0,SWP_SHOWWINDOW) 09/15 09:40
3F:推 VictorTom:小弟觉得这种事有难度说, 您可曾想过同时执行两个您的 09/15 09:45
4F:→ VictorTom:dialog时, 那它们哪一个要在上面?? 09/15 09:45
5F:→ worldxxi:好像有道理 会变成无穷回圈也无所谓 就是一定要在最上面 09/15 10:17
6F:→ worldxxi:q大,好像没用耶,另一个topmost还是可以覆盖 09/15 10:18