对话框的问题

thisisll 2005-04-18 05:34:56
我要在对话框产生WM_INITDIALOG之前取得一个在doc中的指针
还有就是如何传递指针?


doc中
TYPE* p;

要传给CMYDialog
中的 TYPE* p;

谢谢先!
...全文
109 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
oyljerry 2005-04-19
  • 打赏
  • 举报
回复
重载
nonocast 2005-04-19
  • 打赏
  • 举报
回复
To:mfkzj(鹰翔)
>你直接重构一下你的dialog的构造函数 加一个参数 然后在构造函数里面复制参数就可以了

这个也叫重构?
晕死
dfyang 2005-04-19
  • 打赏
  • 举报
回复
C???Dlg(PARAM1 param1,PARAM2 param2,....,CWnd* pParent = NULL);
C???Dlg::C???Dlg(PARAM1 param1,PARAM2 param2,....,CWnd* pParent /*=NULL*/)
: CDialog(C???Dlg::IDD, pParent)
, m_param1(param1)
, m_param2(param2)
, ...
{
}
mfkzj 2005-04-19
  • 打赏
  • 举报
回复
你直接重构一下你的dialog的构造函数 加一个参数 然后在构造函数里面复制参数就可以了
thisisll 2005-04-19
  • 打赏
  • 举报
回复
我主要是不会写dialog的构造函数
谁帮忙给我写一下
谢谢
thisisll 2005-04-19
  • 打赏
  • 举报
回复
dfyang() ( ) 信誉:100
传doc还不如直接传数据呢
xqk 2005-04-18
  • 打赏
  • 举报
回复
up
dfyang 2005-04-18
  • 打赏
  • 举报
回复
在dialog头文件中添加#include "???Doc.h"
并添加public成员:C???Doc* m_pDoc;
(View中)在调用dlg.DoModal()之前加上:dlg.m_pDoc = pDoc;
thisisll 2005-04-18
  • 打赏
  • 举报
回复
不知道怎么传
应该是自己写构造函数吧
不会写~~
jerry 2005-04-18
  • 打赏
  • 举报
回复
直接传进去最简单. 枚举所有的文档太麻烦了
thisisll 2005-04-18
  • 打赏
  • 举报
回复
不行~

不过我用笨办法自己解决了

希望大家给我提供好办法

我的笨办法是:
CDialog::OnInitDialog();
CDRAWApp * pMyApp = (CDRAWApp *)AfxGetApp();
POSITION p = pMyApp->GetFirstDocTemplatePosition();
if(p == NULL)
return false;
CDocTemplate * pDocTemplate = pMyApp->GetNextDocTemplate(p);
POSITION p1 = pDocTemplate->GetFirstDocPosition();
CDRAWDoc * pDocument = (CDRAWDoc *)pDocTemplate->GetNextDoc(p1);
pHead = pDocument->pHead;
lsgt 2005-04-18
  • 打赏
  • 举报
回复
对话框的构造函数传进去。

TYPE* p;
CMyDialog myDlg(p);这样。

另外也可在对话框里做一个函数,例如SetParam(TYPE* p)
调用就这样:
CMyDialog myDlg;
myDlg.SetParam(p);
myDlg.DoModal();

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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