我想知道如何在消息框中显示来自CEdit(由用户输入)的数据。
我想接受来自用户的输入并需要在messagebox中显示它。简单但我无法将CEdit类型(由用户输入)转换为CString类型(我必须在Messagebox中显示)。< / p>
这是我的代码段
In .h file
CEdit* pEdit = new CEdit;
CString text;
In .cpp file
pEdit.Create(WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER,
CRect(150, 10, 500, 50), this, 1);
pEdit.GetWindowText(text);
答案 0 :(得分:2)
因为您已经以编程方式创建了Textbox。
修改强>
在头文件
CEdit
CEdit* pEdit;
将此代码写入OnInitdialog()
函数
pEdit = new CEdit;
pEdit->Create(WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER,CRect(150, 10, 500, 50), this, 1);
现在点击任何按钮即可显示消息框。例如
OnButtonOk()
{
CString strText;
pEdit->GetWindowText(strText);
AfxMessageBox(strText);
}
答案 1 :(得分:0)
有两种方法可以做到这一点。
您可以将编辑控件绑定到CString
变量。当你想获得文本数据时,调用UpdateData(TRUE)
并且CString变量存储文本搅拌数据。
它也可以如下工作:
CString textStr;
CEdit* pEdit = new CEdit;
//call when you want get text
pEdit ->GetWindowText(textStr);
答案 2 :(得分:0)
要从CEdit对象设置和检索文本,请使用CWnd成员函数SetWindowText和GetWindowText,它们设置或获取编辑控件的全部内容,即使它是多行控件。
因此,您创建了CEdit
对象,
CString strOut;
pEdit->GetWindowText(strOut);