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);
}
}
我想将链表的东西通过编辑框显示出来,可是出错了,怎么办啊 展开
: 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);
}
}
我想将链表的东西通过编辑框显示出来,可是出错了,怎么办啊 展开
1个回答
展开全部
建议这样,添加一个按钮控件,然后双击添加消息函数,把代码放在这里,方便调试。
首先任何控件在绑定了valve变量的情况下UpdateData();才会生效,假设编辑框绑定一个变量m_str
那么UpdateData(TRUE);这句话的作用是把当前(运行状态时)编辑框中的内容赋值给m_str,而
UpdateData(FALSE);的作用是把m_str的值在编辑框中显示出来,所以如果有这样的语句:
UpdateData(TRUE);
UpdateData(FALSE);
运行结果就是编辑框内容没有一点变化
而SetWindowText()的作用是立即改变编辑框的内容,不需要配合UpdateData();
如果仅仅是想改变编辑框的值,两种方法:
.....//准备数据
m_str=_T("123");
UpdateData(false);此方法仅限绑定了变量的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询