对于像Menu窗口,ComboBox的Listbox窗口,以及一些在其它应用程序中看到的窗口,他们都具有这样的性质,无论鼠标在这些窗口中怎样点击,甚至在这些窗口中创建一个文本框并在其中输入文字,但是这些窗口的“父窗口(也就是像Menu之类的窗口显示时所在的窗口)”的标题栏仍然处于“激活”状态,也就是说他们的标题栏不会因为新窗口的显示而变成“灰色”。我想知道的就是这样的效果是怎样实现的?是要对像Menu之类的窗口的部分消息作特殊处理吗?另外,请不要告诉我使用下面的办法:
case WM_ONLBUTTONDOWN:
case WM_ONLBUTTONDBLCLK:
case ....
SetForegroundWindow(hParentWnd);
....
这种方法总会导致父窗口的标题栏在失去和得到焦点时闪烁!!!!!希望你能有一个更优,更高效的方法!!!
如果你能知道Menu窗口的实现那就更好了:)
JERKII.SHANG
1/8/05
case WM_ONLBUTTONDOWN:
case WM_ONLBUTTONDBLCLK:
case ....
SetForegroundWindow(hParentWnd);
....
这种方法总会导致父窗口的标题栏在失去和得到焦点时闪烁!!!!!希望你能有一个更优,更高效的方法!!!
如果你能知道Menu窗口的实现那就更好了:)
JERKII.SHANG
1/8/05
解决方案 »
- 怎么取消SetTimer函数已经发出来的WM_TIMER消息
- char * buf和char** buf的问题?
- 莫名其妙就多了5分性欲分,散一散。
- 判断if条件时,常看到NULL == m_pMemDC,就是把常数写在左面,这样有什么意义吗???
- 如何,关于系统托盘
- sdk开发问题:listView
- 关于在全屏模式的程序中使用热键激活自己程序的问题
- 一段16进制宽字节字符串,如何转成中文?
- 关于覆盖API代码HOOK的疑问?高手请进!
- 谁有动态阈值分割的VC代码可否给我一份?
- 两个动态视图显示窗口怎么同时运行?
- SDI中视图分割,加了三个视图,怎么在其中一个视图中刷新另外一个视图,就是调用OnUpdate函数?
即:
case WM_MOUSEACTIVATE:
return MA_NOACTIVATE;:)