如何让窗口获得焦点。

dianhui 2010-04-21 12:39:34
创建一个基于对话框的窗口,然后再在该窗口上动态创建两个窗口,假设为MyWnd1与MyWnd2。
现在想让MyWnd1与MyWnd2获得焦点,但我通过鼠标点击这两个窗口无法做到,然后用
MyWnd1.SetFocus()与MyWnd2.SetFocus()也无法让这两个窗口获得焦点。
请问,该怎么办才能让这指定的窗口获得焦点。
...全文
682 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Lourking 2010-04-22
  • 打赏
  • 举报
回复
你再开个贴,把代码贴上去,你在8L那点信息过少!贴了以后到我空间留个言我就知道了!
dianhui 2010-04-21
  • 打赏
  • 举报
回复
该设个什么属性?
yhp1888 2010-04-21
  • 打赏
  • 举报
回复
你的MyWnd1与MyWnd2窗口属性不对
dianhui 2010-04-21
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 lourking 的回复:]

有可能是你窗口焦点设置有问题,你应该把相应代码贴上来,我们凭空臆想很难发现你的错误,也只能猜测你也许犯了一些常见错误!
[/Quote]
我在8楼已经说明了啊!
dianhui 2010-04-21
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 dianhui 的回复:]

高手请帮忙啊!
[/Quote]
我在8楼已经说明了啊!
Lourking 2010-04-21
  • 打赏
  • 举报
回复
有可能是你窗口焦点设置有问题,你应该把相应代码贴上来,我们凭空臆想很难发现你的错误,也只能猜测你也许犯了一些常见错误!
dianhui 2010-04-21
  • 打赏
  • 举报
回复
高手请帮忙啊!
zhanghaaaa 2010-04-21
  • 打赏
  • 举报
回复
GetDlgItem(ID)->SetFocus();
dianhui 2010-04-21
  • 打赏
  • 举报
回复
动态创建的两个窗口是我自己做的一个窗口类CMyWnd,其基类是CWnd,窗口创建函数如下:
MyWnd1.CreateEx(0, NULL, NULL, WS_CHILD|WS_VISIBLE|WS_CHILD|WS_CLIPCHILDREN, rect, this, nID)
我在CMyWnd类里面添加了WM_MOUSEWHEEL消息,可是测试发现该消息怎么都得不到响应,我怀疑是CMyWnd窗口没有获取到输入焦点,经查确实发现CMyWnd窗口没有获得焦点。
程序运行后,能看到两个窗口显示在对话框上,想通过鼠标点击CMyWnd窗口使其获得焦点也没能实现。通过MyWnd1.SetFocus()与MyWnd2.SetFocus()也无法让这两个窗口获得焦点。
wilson_hz 2010-04-21
  • 打赏
  • 举报
回复
贴代码出来,马上能解决
Eleven 2010-04-21
  • 打赏
  • 举报
回复
用鼠标都得不到焦点,你的窗口时Disable???
vc1000 2010-04-21
  • 打赏
  • 举报
回复
还是先看看你创建窗口的代码吧、
向立天 2010-04-21
  • 打赏
  • 举报
回复
代码怎么写的?
shuo200618333 2010-04-21
  • 打赏
  • 举报
回复
你的窗口this指针传入应该有问题吧,

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧