MFC Cdialog OnPaint画图

SavisW 2018-04-24 04:52:52
多文档程序,点击树状控件节点,并根据树状控件节点传入数据,显示 Cdialog(OnPaint绘制图形);点击不同树状控件节点会显示不同的 OnPaint绘制图形(OnPaint绘制图形由传入数据决定)。现在遇到问题是,点击树状控件节点后OnPaint不会进行重新绘制,怎么样传递数据才能使对话框调用OnPaint重新绘图呢?
...全文
1281 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
hhhh63 2018-04-27
  • 打赏
  • 举报
回复
引用 12 楼 xiangsui0812 的回复:
[quote=引用 10 楼 hhhh63 的回复:] 设一个成员变量 m_pDialog = new YouDialog()
这样还是会引起中断 [/quote]把这段代码贴出来看看
schlafenhamster 2018-04-26
  • 打赏
  • 举报
回复
http://blog.sina.com.cn/s/blog_73428e9a0101i6gr.html "在CDockablePane中嵌入对话框"
schlafenhamster 2018-04-26
  • 打赏
  • 举报
回复
CDockablePane ?
SavisW 2018-04-26
  • 打赏
  • 举报
回复
引用 9 楼 schlafenhamster 的回复:
你的对话框是怎么 创建的 ?
我的对话框是创建在一个DOCKPANE中的
SavisW 2018-04-26
  • 打赏
  • 举报
回复
引用 10 楼 hhhh63 的回复:
[quote=引用 8 楼 xiangsui0812 的回复:] 请问我这个指针应该在哪里去初始化呢?
设一个成员变量 m_pDialog = new YouDialog() [/quote]这样还是会引起中断
schlafenhamster 2018-04-25
  • 打赏
  • 举报
回复
你的对话框是怎么 创建的 ?
hhhh63 2018-04-25
  • 打赏
  • 举报
回复
引用 8 楼 xiangsui0812 的回复:
请问我这个指针应该在哪里去初始化呢?
设一个成员变量 m_pDialog = new YouDialog()
SavisW 2018-04-24
  • 打赏
  • 举报
回复
引用 7 楼 hhhh63 的回复:
引用 5 楼 xiangsui0812 的回复:
[quote=引用 3 楼 hhhh63 的回复:] pDialog->Invalidate();
这样会直接中断程序
指针没有初始化[/quote]请问我这个指针应该在哪里去初始化呢?
hhhh63 2018-04-24
  • 打赏
  • 举报
回复
引用 5 楼 xiangsui0812 的回复:
引用 3 楼 hhhh63 的回复:
pDialog->Invalidate();
这样会直接中断程序
指针没有初始化
schlafenhamster 2018-04-24
  • 打赏
  • 举报
回复
对话框窗口必须 存在 ! (作子窗口)
SavisW 2018-04-24
  • 打赏
  • 举报
回复
引用 3 楼 hhhh63 的回复:
pDialog->Invalidate();
这样会直接中断程序
hhhh63 2018-04-24
  • 打赏
  • 举报
回复
pDialog->Invalidate();
SavisW 2018-04-24
  • 打赏
  • 举报
回复
引用 2 楼 schlafenhamster 的回复:
"不会进行重新绘制" 给 对话框 发: RedrawWindow 或 Invalidate() UpdateWindow()
使用Invalidate()的话程序会中断,变量始终显示hWnd unused
schlafenhamster 2018-04-24
  • 打赏
  • 举报
回复
"不会进行重新绘制" 给 对话框 发: RedrawWindow 或 Invalidate() UpdateWindow()
SavisW 2018-04-24
  • 打赏
  • 举报
回复
补充一下:显示对话框是嵌在一个DockPane中的

15,979

社区成员

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

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