初始化对话框的一个问题

polosheng 2003-07-06 09:24:40
对话框里有一个edit控件.
我要在主程序里,在这个dialog DoModal之前初始化这个edit控件,不知到要怎么做
不要说在initaldialog里,我要在主程序里初始化它.

我在主程序里的代码


CDBConnect dlg("sample.mdb");
dlg.m_edit.SetWindowText(str)//str是我前面的一个CString
dlg.DoModal()

这样是不行的.
...全文
77 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhouyong0371 2003-07-07
  • 打赏
  • 举报
回复
我也是用USTCTony(Tony) 的方法作的,没有问题,执行不会出错。

方法2:针对每一个要传进来的文本,在Dlg类里添加一个CString类型的成员函数,保存要设置的字符串,在OnInitDialog()内SetWindowText()
polosheng 2003-07-07
  • 打赏
  • 举报
回复
USTCTony(Tony) ::我一开始就是想的这个办法,但编译通的,执行是有错的.我想以为在domodal之前没有edit还没有create的缘故,所以这时候edit的ddx机制是不存在的吧.
AkiraChing(水银) :: edit只是个例子,我的初始化有40多个变量,不成都这样阿.

谢谢大家了.
AkiraChing 2003-07-07
  • 打赏
  • 举报
回复
在构造函数里加一个变量吧,比如说strText,这样CDBConnect dlg("sample.mdb",strText),在构造函数里初始化你的Edit应该可以吧
fengqinggao 2003-07-06
  • 打赏
  • 举报
回复
同意 USTCTony(Tony) ,因为你的对话框在DoModal之前是不存在的,当然不能用SetWindowText(),这个函数只有窗口产生之后才能用,而他的成员变量在定义之后就都存在了,在DoModal的时候会用这个映射的成员变量初始化你的Edit控件
USTCTony 2003-07-06
  • 打赏
  • 举报
回复
给哪个edit映射一个 CString 变量str1。在domodal() 之前赋值dlg.str1=str。
这样就ok了
polosheng 2003-07-06
  • 打赏
  • 举报
回复
我说了,我的情况很特殊,一定要在主控程序里初始化.
谢谢了阿.
xiaoshao_0_0 2003-07-06
  • 打赏
  • 举报
回复
Updatedata();
试试看
devouer 2003-07-06
  • 打赏
  • 举报
回复
在OnInitDialog中处理!
polosheng 2003-07-06
  • 打赏
  • 举报
回复
帮我看看阿,我在线等阿.

15,979

社区成员

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

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