mfc 在编辑框中显示消息

Dialog_allinfo::Dialog_allinfo(CWnd*pParent/*=NULL*/,student_list*s_list):CDi... Dialog_allinfo::Dialog_allinfo(CWnd* pParent /*=NULL*/,student_list * s_list)
: CDialogEx(Dialog_allinfo::IDD, pParent)
{
info_student * head = s_list->gethead();
CString str1,str2;
if(head != NULL)
{
while(head->get_next() != NULL)
{
str2.Format(_T("%s %s %d %d %d %d %d %d %lf"),head->get_name(),head->get_num(),head->get_cp(),head->get_st(),head->get_mt(),head->get_mz(),head->get_en(),head->get_pe(),head->get_average());
str1 += str2;
head = head->get_next();
}
UpdateData(TRUE);
GetDlgItem(IDC_EDIT1)->SetWindowText(str1);
UpdateData(FALSE);
}
}
我想将链表的东西通过编辑框显示出来,可是出错了,怎么办啊
展开
 我来答
同睿好0R
2018-04-01 · TA获得超过100个赞
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部

建议这样,添加一个按钮控件,然后双击添加消息函数,把代码放在这里,方便调试。


首先任何控件在绑定了valve变量的情况下UpdateData();才会生效,假设编辑框绑定一个变量m_str
那么UpdateData(TRUE);这句话的作用是把当前(运行状态时)编辑框中的内容赋值给m_str,而
UpdateData(FALSE);的作用是把m_str的值在编辑框中显示出来,所以如果有这样的语句:
UpdateData(TRUE);
UpdateData(FALSE);
运行结果就是编辑框内容没有一点变化
而SetWindowText()的作用是立即改变编辑框的内容,不需要配合UpdateData();
如果仅仅是想改变编辑框的值,两种方法:
.....//准备数据
m_str=_T("123");
UpdateData(false);此方法仅限绑定了变量的

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式