C++ MFC 自定义函数中 给IDC_EDIT1 赋值,谢谢
展开全部
在自定义函数中给对话框和form的控件赋值,必须首先得到对话框等窗口的指针。因此必须明确两者之间的关系,不能是纯粹的无关系,这样在MFC体系中是不合乎体系逻辑的。
推荐办法:
在对话框类做自定义函数(即:函数是类成员函数),这样在自定义函数中,就可以:
GetDlgItem(IDC_EDIT1)->SetWindowText(_T("XXX"));
这样赋值了。
推荐办法:
在对话框类做自定义函数(即:函数是类成员函数),这样在自定义函数中,就可以:
GetDlgItem(IDC_EDIT1)->SetWindowText(_T("XXX"));
这样赋值了。
追问
具体怎么做呢?我刚学,有点不太懂,如果这样做,在其它地方调用这个函数会不会有问题?
追答
对话框控件的赋值,最好在内部完成,不要在外部(也就是不要在外部调用这个函数),尤其是模态对话框。
对话框类,右键,Add Function即可。
展开全部
方法一:绑定控件
方法二:绑定控件变量
VC6.0按快捷键Ctrl+W,更高版本Ctrl+shift+X打开类向导。
如果绑定了控件m_wndEdit,直接用m_wndEdit.SetWindowText()即可。
如果绑定了控件变量m_strEdit,在变量赋值上下文添加updateData()即可。
方法二:绑定控件变量
VC6.0按快捷键Ctrl+W,更高版本Ctrl+shift+X打开类向导。
如果绑定了控件m_wndEdit,直接用m_wndEdit.SetWindowText()即可。
如果绑定了控件变量m_strEdit,在变量赋值上下文添加updateData()即可。
追问
m_wndEdit,m_strEdit是自己填上去的吗?是不是任何名字都可以的?
追答
是的,这个只是变量名而已。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以给edit控件关联一个cstring变量,并且update(true或false),如果是取控件value用true,显示用false,大概是这样,记的不是很清楚
更多追问追答
追问
能写下简单代码吗?
追答
注意之前回答有错
CEdit a;
DoDataExchange函数增加DDX_Control(pDX, IDC_EDIT1, a );
上面是可以直接在类向导中对应类的成员变量中完成
在需要赋值的位置:
a.SetWindowText(cstring);
UpdateData(FALSE);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先关联变量,直接给关联变量赋值就可以。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询