vc++MFC获取对话框的指针

qq_34129005 2016-12-03 08:39:04
vc6.0 MFC 怎么获取对象的指针,这是我的dialog1(dialog1不是主界面),

上面有一些参数,需要在dialog2上修改

。在dialog2里面要怎么获取dialog1的指针,从而修改参数。那些编辑框都有掺入的变量。详细点,我vc基础弱。谢谢!
...全文
673 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
OnTheWay_Boy 2016-12-19
  • 打赏
  • 举报
回复
引用 8 楼 VisualEleven 的回复:
[quote=引用 2 楼 qq_34129005 的回复:] [quote=引用 1 楼 xianglitian 的回复:] 这要看你2和1的实现方法和逻辑关系 就看你这两个界面没法给意见
点击了第一个界面的设置按键,弹出第二个界面[/quote] 你修改一下第二个对话框的构造函数,将第一个对话框的CDialog*/HWND作为构造函数的参数传递过去即可。[/quote] 上面说的应该都可以,这个比较方便,全局自己斟酌
coolooooooo 2016-12-17
  • 打赏
  • 举报
回复
你在哪里创建的2,和1一起?还是1中创建的?
penghuahuijuan 2016-12-16
  • 打赏
  • 举报
回复
全局变量,对话框由m_hWnd可以用啊,为什么要指针呢??
向立天 2016-12-06
  • 打赏
  • 举报
回复
引用 4 楼 qq_34129005 的回复:
[quote=引用 3 楼 向立天的回复:][quote=引用 2 楼 qq_34129005 的回复:] [quote=引用 1 楼 xianglitian 的回复:] 这要看你2和1的实现方法和逻辑关系 就看你这两个界面没法给意见
点击了第一个界面的设置按键,弹出第二个界面[/quote] dialog2是模态调用么? 那dialog2确定之后把相应的值赋值给dialog1即可[/quote] 对,是模态对话框,但是在对话框2中要怎么调用到对话框1中的变量呢,应该是用指针吧。[/quote] 模态调用之前把需要的变量传给dialog2
赵4老师 2016-12-05
  • 打赏
  • 举报
回复
使用全局变量
xiaohuh421 2016-12-05
  • 打赏
  • 举报
回复
最好的方法不是传指针. 而是在dialog2中, 把要设置的参数, 保存为dialog2的成员变量. 当点击dialog1中的"设置"按钮时, 肯定会有 Dialog2 dlg; dlg.DoModal()这样的操作吧, 这时在调用DoModal前,就可以把原来设置的参数设置到dialog2的成员变量中, 再显示出来, 然后在Dialog2中修改了数据, 点击"确定"按钮的时候, 就把修改后参数保存到成员变量中. DoModal结束时, 就可以通过成员变量获取修改后的值了. 假设: 你的dialog2中有一个"最大采样间隔", 那么dialog2中就可以定义一个int变量: int mSampleTimes; dialog1中有一个成员变量保存当前值. int mCurSampleTimes; dialog1的"设置"按钮响应函数为onSetting() void dialog1::onSetting() { Dialog2 dlg; dlg.mSampleTimes = mCurSampleTimes; if(IDOK==dlg.DoModal() ) //IDOK 表示点击"确定"按钮 { mCurSampleTimes = dlg.mSampleTimes; } }
Eleven 2016-12-05
  • 打赏
  • 举报
回复
引用 2 楼 qq_34129005 的回复:
[quote=引用 1 楼 xianglitian 的回复:] 这要看你2和1的实现方法和逻辑关系 就看你这两个界面没法给意见
点击了第一个界面的设置按键,弹出第二个界面[/quote] 你修改一下第二个对话框的构造函数,将第一个对话框的CDialog*/HWND作为构造函数的参数传递过去即可。
笨笨仔 2016-12-05
  • 打赏
  • 举报
回复
最方便的方法是在初始化创建对话框窗口时,保存好此窗口的指针,并存放在全局变量或静态变量中,需要时直接获取此窗口指针。
阿源是少年 2016-12-05
  • 打赏
  • 举报
回复
给你的dialog2的类添加一个成员变量加CDialog1* m_pMainDlg;和一个方法
SetMainDlg(CDialog1* p)
{
   m_pMainDlg = p;
}
dialog2 doModal之前先调用SetMainDlg你就能得到主对话框指针了。
qq_34129005 2016-12-04
  • 打赏
  • 举报
回复
引用 3 楼 向立天的回复:
[quote=引用 2 楼 qq_34129005 的回复:] [quote=引用 1 楼 xianglitian 的回复:] 这要看你2和1的实现方法和逻辑关系 就看你这两个界面没法给意见
点击了第一个界面的设置按键,弹出第二个界面[/quote] dialog2是模态调用么? 那dialog2确定之后把相应的值赋值给dialog1即可[/quote] 对,是模态对话框,但是在对话框2中要怎么调用到对话框1中的变量呢,应该是用指针吧。
向立天 2016-12-04
  • 打赏
  • 举报
回复
引用 2 楼 qq_34129005 的回复:
[quote=引用 1 楼 xianglitian 的回复:] 这要看你2和1的实现方法和逻辑关系 就看你这两个界面没法给意见
点击了第一个界面的设置按键,弹出第二个界面[/quote] dialog2是模态调用么? 那dialog2确定之后把相应的值赋值给dialog1即可
qq_34129005 2016-12-03
  • 打赏
  • 举报
回复
引用 1 楼 xianglitian 的回复:
这要看你2和1的实现方法和逻辑关系 就看你这两个界面没法给意见
点击了第一个界面的设置按键,弹出第二个界面
向立天 2016-12-03
  • 打赏
  • 举报
回复
这要看你2和1的实现方法和逻辑关系 就看你这两个界面没法给意见

15,979

社区成员

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

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