冰川人看世界 2015-05-28 02:58 采纳率: 100%
浏览 2746
已采纳

MFC更新界面,用哪种方式好

最近在做一个MFC对话框程序。情况是这样的,
一、程序主对话框上,点击按钮,打开一个非模态的子对话框窗口,子对话框里执行一些操作后需要把操作的结果跟新到主对话框上。想到两种方式:
1.子对话框窗口类中保存主对话框指针,然后在子对话框窗口类利用该指针更新主对话框界面
2.自定义消息,利用SendMessage或PostMessage函数发送消息到主对话框,函数的lParam参数保存操作的结果。主对话框收到消息后更新界面。
请问哪一种方式好。

二、子对话框类中创建了一个线程,线程里执行一些操作,操作结果需要更新到子对话框界面上。还是同样的问题,是传递指针好,还是利用消息好。之前学过C#,C#里面,非UI线程无法直接访问UI线程的界面元素。

恳请各位路过的大神指导一下

  • 写回答

2条回答

  • 知常曰明 2015-05-28 04:21
    关注

    第一个,消息好。第二个问题我觉得只能用消息,不能用指针,因为跨了线程了,应该可能会产生同步问题。总而言之,消息是安全的数据传输方式。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题