MFC 中改变编辑框的文字

voidCMyDig::OnButtonClick()//My是我的工程名字{SetDlgItemText(IDC_Status,__T("Connectionsucce... void CMyDig::OnButtonClick()//My是我的工程名字
{
SetDlgItemText(IDC_Status,__T("Connection successful"));
//这样写可以改变文本框的字
}
后来我建立了个新类,CustomSocket:public CSocket
void CustomSocket::OnCustom()
{
SetDlgItemText(IDC_Status,__T("sadfasdfsf"));
// 编译失败,说非静态函数的非法调用。
}
问题:如何在新类中修改EDIT控件里的文字。
展开
 我来答
a36254094
2012-03-12 · TA获得超过208个赞
知道小有建树答主
回答量:196
采纳率:0%
帮助的人:179万
展开全部
CWnd::SetDlgItemText
void SetDlgItemText( int nID, LPCTSTR lpszString );
你看啊,SetDlgItemText是CWnd类的一个方法,它以及它的子类可以这样直接使用SetDlgItemText(IDC_Status,__T("Connection successful"));

但你写的类是CSocket的子类,这个类里没有SetDlgItemText方法,你再这样直接调用就不行了
你得这样:
Status.SetDlgItemText(__T("sadfasdfsf"));
Status是IDC_Status所关联的成员变量
更多追问追答
追问
Status是IDC_Status所关联的成员变量 

Status.SetDlgItemText(__T("sadfasdfsf"));
将这句语句放到新类中,编译器提示Status是未声明的标示符,我的确用向导建立了这个控件关联变量,但却只能在CMyDlg类中使用,在其他类中不能使用这个关联变量。
追答
哦,我想你的对话框应该有个类吧
你在CSocket这样
CMyDlg dlg;
dlg.Status.SetDlgItemText(__T("sadfasdfsf"));
徐晨鹤
2012-03-22
知道答主
回答量:9
采纳率:0%
帮助的人:6.8万
展开全部
选择控件-->右击,选择属性-->外观caption,改成想输入的文字即可
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式