关于网友提出的“ 获取对话框里编辑框的文字失败是怎么回事?”问题疑问,本网通过在网上对“ 获取对话框里编辑框的文字失败是怎么回事?”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: 获取对话框里编辑框的文字失败是怎么回事?
描述: 我有个对话框,里面有很多编辑框,我希望在编辑框里输入文本后按下一个按钮,以获得编辑框的文本.
但是每次读返回空字符串,使用下面的两个函数结果都一样.
GetDlgItemText(...)
GetDlgItem(..)->GetWindowText(..)
编辑框的属性类似下面
EDITTEXT IDC_PP_TRANSDUCER_PRESSURE,413,288,40,15,ES_AUTOHSCROLL
请问怎样查找原因解决这个问题?
解决方案1: GetDlgItemText GetWindowText 之前无需 UpdateData.
应该是ID的问题。写个测试代码 SetDlgItemText 试试先。
解决方案2: 取之前添加UpdateData();
解决方案3: Recourse.h 中看看你的ID是否重复了。。。
解决方案4: CWnd* p =GetDlgItem(ID);
if(p != NULL)
p->GetWindowText(str);
这么写是没错的。如果有错,可能是ID问题。你可以打印一下看看p是否为NULL
解决方案5: (CEdit*),可能是句柄取错了吧,新建一个编辑框试试
以上介绍了“ 获取对话框里编辑框的文字失败是怎么回事?”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2223465.html