MFC,如何在两个子对话框之间传递变量? 5C

RT,比如我的主界面有两个按钮,点开是不同的子对话框,一个对话框的功能是进行队列入队,另一进行出队操作,应该怎么实现?

10个回答

分隔窗口。

在左边的View中操作,然后GetPane得到右边的View,作相应的显示

对button进行设置,比如关联OnClick响应函数,在该函数里实现你想要实现的功能,主对话框要条用调用子对话框,要理清消息传递关系

Nin7a
Nin7a 能具体点吗
2 年多之前 回复

对button进行设置,比如关联OnClick响应函数,在该函数里实现你想要实现的功能,主对话框要条用调用子对话框,要理清消息传递关系

Nin7a
Nin7a 能具体点吗
2 年多之前 回复

在主界面定义个struct,例如struct List{ std::vectorstd::string datas;},然后在主对话框中实例化,例如list = new List();当点击按钮后把结构的指针作为参数传递给子对话框即可,例如button1点击后用
SubDlg1 dlg(list);
dlg.DoModal()

用公共类建立静态变量,这样2个对话框改变和获取的值都一样

公共队列的插入和获取要同步,这个需要两边(你的情况的话两个对话框对象之间互相通知如发消息等)

可以通过他们公共的父窗口传递,或者主框架窗口AfxGetMainWnd()来中转

写好两个对话框各自收到消息的处理函数,然后子对话框将要发送的消息发给父对话框(按钮所在窗口),由父对话框转发消息:
简单的方式就是SendMessage/PostMessage

简单的就用全局变量吧。。。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐