我编写了一个对话框,让用户输入姓名和年龄(用文本框输入),要求两项都不能
为空,因此在用户输入时要检查是否为空,我用
GetDlgItemText(IDC_EDIT1,name)顺利得到了用户输入的姓名,但用
GetDlgItemText(IDC_EDIT2,age) 得到age时编译出错,原因是在对话框中定义age
为int,我查了MSDN该函数格式如下,好象可以有三个参数:
UINT GetDlgItemText( int nID, LPTSTR lpStr, int nMaxCount ) const;
BOOL GetDlgItemText( int nID, BSTR& bstrText ) const;
但LPTSTR lpStr为什么呢?这个函数能解决我的问题吗?怎么解决?
若不行的话有别的什么办法解决吗?
新手上路,请多关照!
为空,因此在用户输入时要检查是否为空,我用
GetDlgItemText(IDC_EDIT1,name)顺利得到了用户输入的姓名,但用
GetDlgItemText(IDC_EDIT2,age) 得到age时编译出错,原因是在对话框中定义age
为int,我查了MSDN该函数格式如下,好象可以有三个参数:
UINT GetDlgItemText( int nID, LPTSTR lpStr, int nMaxCount ) const;
BOOL GetDlgItemText( int nID, BSTR& bstrText ) const;
但LPTSTR lpStr为什么呢?这个函数能解决我的问题吗?怎么解决?
若不行的话有别的什么办法解决吗?
新手上路,请多关照!
GetDlgItemText把edit控件上的东东赋给一个字符串
如果你要判断你的age 可以用一个CString类型的临时变量来判断
CString strTmp;
GetDlgItemText(IDC_EDIT2,strTmp);
if (0==strTmp.Compare("")) {
// age 为空
}
else {
age=atoi(strTmp);
}
前提是你要保证edit2的用户输入是一个整数 如果你已经绑定了一个整数成员变量那mfc自动为你做了这个工作