我试过了,这样会所有值内容先输出,所有标签内容都后输出,而且标签内容倒着输出的
时间: 2024-02-20 15:58:44 浏览: 57
总在最前面显示你要看的内容
非常抱歉,我的回答有误。您所说的情况是因为在每个标签和值都输出后,都会自动添加一个换行符(\r\n),因此导致标签和值的顺序和排列方式都不正确。为了解决这个问题,您可以将每个标签和对应的值都封装在一个字符串中,然后再输出这个字符串。下面是示例代码:
```
const char* szID = "学号:";
const char* szName = "姓名:";
const char* szAge = "年龄:";
const char* szGrade = "成绩:";
CString strID(szID), strName(szName), strAge(szAge), strGrade(szGrade);
CString str;
str.Format(_T("%d"), it->id);
str = strID + str + _T("\r\n");
m_Listbox.AddString(str);
str = CString(it->name.c_str());
str = strName + str + _T("\r\n");
m_Listbox.AddString(str);
str.Format(_T("%d"), it->age);
str = strAge + str + _T("\r\n");
m_Listbox.AddString(str);
str.Format(_T("%d"), it->grade);
str = strGrade + str + _T("\r\n");
m_Listbox.AddString(str);
```
这样,每个标签和对应的值都会在同一行输出,并且标签和值的顺序也是正确的。
阅读全文