MFC中如何给编辑框设置文本内容?
3个回答
展开全部
1、打开Visual Studio 2013 依次点击左上角的文件-新建-项目。
2、在弹出的新建项目窗口中依次点击:已安装 - 模板- Visual C++ - MFC,再点击MFC应用程序,并输入项目名(也可直接使用默认名称)在此例中我们取名为MyFirstMFC,最后点击确定按钮。
3、在程序中添加一个编辑框和一个按钮,设置按钮ID为IDC_SetText,Caption为“设置编辑框文本”;设置编辑框ID为IDC_EditBox;调整好窗口的大小。
4、双击“设置编辑框文本”按钮,在按钮的处理程序中添加代码:
GetDlgItem(IDC_EditBox)->SetWindowText(_T("我是编辑框的内容"));
5、生成程序,启动调试,点击按钮就会设置编辑框中的内容。
展开全部
可以设置,你首先要获取编辑框中的内容,然后在MessageBox中显示。获取编辑框内容可以用Updata()或GetWindowText()获取。函数用法请看MSDN或网上查。
更多追问追答
追问
我的意思是编辑框原来没有内容,是点击按钮以后弹出的消息框中的内容给编辑框赋值了?
追答
你的弹出的消息框的内容从哪得到的??
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
主要依赖SetWindowText函数。
首先给编辑框关联一个CEdit类型的变量。(右键编辑框,添加变量就可以)
然后调用SetWindowText函数,传入CString类型的参数。
函数原型:
CWnd::SetWindowText
void SetWindowText( LPCTSTR lpszString );
范例(来源于MSDN):
Example
// set the text in IDC_MYEDIT
CWnd* pWnd = GetDlgItem(IDC_MYEDIT);
pWnd->SetWindowText(_T("Hockey is best!"));
// Get the text back. CString is convenient, because MFC
// will automatically allocate enough memory to hold the
// text--no matter how large it is.
CString str;
pWnd->GetWindowText(str);
ASSERT(str == _T("Hockey is best!"));
// The LPTSTR override works, too, but it might be too short.
// If we supply a buffer that's too small, we'll only get those
// characters that fit.
TCHAR sz[10];
int nRet = pWnd->GetWindowText(sz, 10);
// Nine characters, plus terminating null
ASSERT(lstrcmp(sz, _T("Hockey is")) == 0);
ASSERT(nRet == 9);
// You can query the length of the text without the length of
// the string using CWnd::GetWindowTextLength()
nRet = pWnd->GetWindowTextLength();
ASSERT(nRet == 15);
首先给编辑框关联一个CEdit类型的变量。(右键编辑框,添加变量就可以)
然后调用SetWindowText函数,传入CString类型的参数。
函数原型:
CWnd::SetWindowText
void SetWindowText( LPCTSTR lpszString );
范例(来源于MSDN):
Example
// set the text in IDC_MYEDIT
CWnd* pWnd = GetDlgItem(IDC_MYEDIT);
pWnd->SetWindowText(_T("Hockey is best!"));
// Get the text back. CString is convenient, because MFC
// will automatically allocate enough memory to hold the
// text--no matter how large it is.
CString str;
pWnd->GetWindowText(str);
ASSERT(str == _T("Hockey is best!"));
// The LPTSTR override works, too, but it might be too short.
// If we supply a buffer that's too small, we'll only get those
// characters that fit.
TCHAR sz[10];
int nRet = pWnd->GetWindowText(sz, 10);
// Nine characters, plus terminating null
ASSERT(lstrcmp(sz, _T("Hockey is")) == 0);
ASSERT(nRet == 9);
// You can query the length of the text without the length of
// the string using CWnd::GetWindowTextLength()
nRet = pWnd->GetWindowTextLength();
ASSERT(nRet == 15);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询