窗口句柄为空

longlong3399 2011-04-02 05:15:04
本人因为项目要求,要将之前的对话框由弹出一个改为同时弹出多个相同的,所以不能使用之前的模态对话框,只能使用非模态的。就是说这几个相同的对话框都是非模态的。为了防止它们弹出后又消失,在CXXApp::InitInstance里面先弹出一个模态对话框,然后将那几个非模态的创建和显示都移到新加的模态对话框的实现里。但是在对这几个相同的模态对话框操作时发现程序找不到窗口的句柄了,比如对非模态对话框里的Edit操作,让它显示东西,但是找不到Edit和其父窗口的句柄。调试时用GetActiveWindow函数,结果可以找到窗口,但是其句柄为空,即调试窗口显示是这样“pwnd 0x0012c078{CXXDlg hWnd=???}”。本人菜鸟,实在找不出什么办法了。求大牛们想想办法。。。。
...全文
295 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
anbam 2011-04-02
  • 打赏
  • 举报
回复
使用 spy++
longlong3399 2011-04-02
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 quwei197874 的回复:]
发个自定义消息,在里面写代码.
[/Quote]
请您说清楚点好吗,你是说在模态对话框里面定义消息,在消息的实现里面弹出非模态?
longlong3399 2011-04-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 howtop2p 的回复:]
有代码吗?
[/Quote]
代码很大,内容挺复杂的,不便于贴,不好意思
longlong3399 2011-04-02
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 visualeleven 的回复:]
你创建非模态对话框的指针把它们保存起来,供之后的使用
[/Quote]
是说把那几个非模态对话框的类保存起来吗?
quwei197874 2011-04-02
  • 打赏
  • 举报
回复
发个自定义消息,在里面写代码.
HowToP2p 2011-04-02
  • 打赏
  • 举报
回复
有代码吗?
Eleven 2011-04-02
  • 打赏
  • 举报
回复
你创建非模态对话框的指针把它们保存起来,供之后的使用

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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