MFC:在MessageBox(弹窗)中显示不同格式的数据

前言

这段时间在用MFC做开发,作为一个新手,时不时地希望能够观察到程序运行的情况,但毕竟不是控制台程序,查看数据没有那么方便,于是希望能通过弹窗,把想要的数据显示出来。

int AfxMessageBox(LPCTSTR lpszText)

在这个弹窗函数中,我们会发现,要显示的文本类型必须是LPCTSTR类型。

LPCTSTR是指向常量字符串的长指针,即(Long Pointer to ConsTant STRing)。

当我们需要用到这个类型的变量是,一般会先去定义一个CString类型的字符串,因为CString类有一个操作符operator LPCTSTR ( ) const,可以用来转换的。

假如有一个CString类型的变量str,使用函数LPCTSTR (str)后,就可以转换为LPCTSTR类型。

在开发过程中,有可能会遇到情况,显示CString类型未定义,这时候就需要导入afx.h或cstring.h头文件。

Windows使用两种字符集ANSI和UNICODE,前者是一种但字节的字符格式,在处理像中文这样的双字节文字时,就很容易出现乱码,为了保证文字能够正常显示,我们需要把文字字符串的格式转化为支持双字节(UNICODE)。即可以调用_T()这个宏进行处理。例如:CString temp_value = _T("");

在AfxMessageBox这个函数中,参数必须是支持UNICODE格式的,所以必须在定义的时候就做转换。

CString.Format()函数则被用于拼接需要显示的内容。

程序示例

MFC:在MessageBox(弹窗)中显示不同格式的数据_第1张图片
MFC:在MessageBox(弹窗)中显示不同格式的数据_第2张图片

你可能感兴趣的:(MFC)