MFC更新多个对象到界面

JoeyPLee 2013-03-31 09:10:21
主程序包括UI,对象CMyCell,CBoxmanage,Cbox,CRobo.
CMyCell包含两个重要成员变量CBoxmanage,CRobo
其中CBoxmanage保存一个CBoox指针列表.负责对CRobo进行读写,及更新多个CBox的状态到UI
CRobot也要更新自身状态到UI
我想知道的是怎么传递要更新的数据,

Cbox---->CBoxmanage---->UI

CRobo--->CMyCell------->UI



...全文
257 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
JoeyPLee 2013-04-29
  • 打赏
  • 举报
回复
引用 5 楼 Mackz 的回复:
[quote=引用 3 楼 JoeyPLee 的回复:] 引用 2 楼 happyparrot 的回复:逐层传递,外部类负责与UI交互 版主大哥,我也知道从底层类,Cbox-->CBoxmanage-->CMyCell--->UI,可是不知道怎么实现 难道要Cbox保存一个CBoxmanage指针,CBoxmanage保存一个CMyCell指针,CMyCell再保存一个UI指针?
Bingo,你说对了。其实我觉得设计应该是反过来,正好前两天给某人做的例子差不多。http://bbs.csdn.net/topics/390407796?page=1#post-394077490[/quote] 看了你帮别人的帖子,更新界面算是从0到1了,谢了哈
向立天 2013-04-11
  • 打赏
  • 举报
回复
引用 9 楼 JoeyPLee 的回复:
引用 8 楼 xianglitian 的回复:引用 3 楼 JoeyPLee 的回复:引用 2 楼 happyparrot 的回复:逐层传递,外部类负责与UI交互 版主大哥,我也知道从底层类,Cbox-->CBoxmanage-->CMyCell--->UI,可是不知道怎么实现 难道要Cbox保存一个CBoxmanage指针,CBoxmanage保存一个CMyCe……
发消息只需要一个句柄
JoeyPLee 2013-04-10
  • 打赏
  • 举报
回复
引用 7 楼 wwwhhb4002 的回复:
引用 6 楼 JoeyPLee 的回复:如果不想头文件相互包含有没有什么法子呢? Notify() { pUI->Update(structa &); } 这样就成了生产者/消费者模式 这个没看懂,求具体点
想Cbox直接发消息给UI,在CBOX中填充一个数据结构,然后将应引用传给UI,UI根据此结构来更新
JoeyPLee 2013-04-10
  • 打赏
  • 举报
回复
引用 8 楼 xianglitian 的回复:
引用 3 楼 JoeyPLee 的回复:引用 2 楼 happyparrot 的回复:逐层传递,外部类负责与UI交互 版主大哥,我也知道从底层类,Cbox-->CBoxmanage-->CMyCell--->UI,可是不知道怎么实现 难道要Cbox保存一个CBoxmanage指针,CBoxmanage保存一个CMyCell指针,CMyCell再保存一个UI指针?这……
这样的话,头文件要相互包含吧? 因为UI也要发消息给Cbox,能不能不相互包含头文件啊? 最怕相互包含头件了 我原来想Cbox直接发消息给UI,在CBOX中填充一个数据结构,然后将应引用传给UI,UI根据此结构来更新 可是感觉这样耦合太高,不是好办法
向立天 2013-04-06
  • 打赏
  • 举报
回复
引用 3 楼 JoeyPLee 的回复:
引用 2 楼 happyparrot 的回复:逐层传递,外部类负责与UI交互 版主大哥,我也知道从底层类,Cbox-->CBoxmanage-->CMyCell--->UI,可是不知道怎么实现 难道要Cbox保存一个CBoxmanage指针,CBoxmanage保存一个CMyCell指针,CMyCell再保存一个UI指针?
这个思路可以
wwwhhb4002 2013-04-06
  • 打赏
  • 举报
回复
引用 6 楼 JoeyPLee 的回复:
如果不想头文件相互包含有没有什么法子呢? Notify() { pUI->Update(structa &); } 这样就成了生产者/消费者模式
这个没看懂,求具体点
JoeyPLee 2013-04-04
  • 打赏
  • 举报
回复
如果不想头文件相互包含有没有什么法子呢? Notify() { pUI->Update(structa &); } 这样就成了生产者/消费者模式
菜牛 2013-04-02
  • 打赏
  • 举报
回复
引用 3 楼 JoeyPLee 的回复:
引用 2 楼 happyparrot 的回复:逐层传递,外部类负责与UI交互 版主大哥,我也知道从底层类,Cbox-->CBoxmanage-->CMyCell--->UI,可是不知道怎么实现 难道要Cbox保存一个CBoxmanage指针,CBoxmanage保存一个CMyCell指针,CMyCell再保存一个UI指针?
Bingo,你说对了。其实我觉得设计应该是反过来,正好前两天给某人做的例子差不多。http://bbs.csdn.net/topics/390407796?page=1#post-394077490
king1076 2013-04-01
  • 打赏
  • 举报
回复
setdlgitemtext 之类的吧
快乐鹦鹉 2013-04-01
  • 打赏
  • 举报
回复
逐层传递,外部类负责与UI交互
「已注销」 2013-04-01
  • 打赏
  • 举报
回复
对象不是的函数吗? CMyCell调用CBoxmanage,CBoxmanage再调用Cbox,都将返回值作为结果传出,CMyCell保存UI的指针,进行数据更新就好了。
引用 3 楼 JoeyPLee 的回复:
引用 2 楼 happyparrot 的回复:逐层传递,外部类负责与UI交互 版主大哥,我也知道从底层类,Cbox-->CBoxmanage-->CMyCell--->UI,可是不知道怎么实现 难道要Cbox保存一个CBoxmanage指针,CBoxmanage保存一个CMyCell指针,CMyCell再保存一个UI指针?
JoeyPLee 2013-04-01
  • 打赏
  • 举报
回复
引用 2 楼 happyparrot 的回复:
逐层传递,外部类负责与UI交互
版主大哥,我也知道从底层类,Cbox-->CBoxmanage-->CMyCell--->UI,可是不知道怎么实现 难道要Cbox保存一个CBoxmanage指针,CBoxmanage保存一个CMyCell指针,CMyCell再保存一个UI指针?

15,979

社区成员

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

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