首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MBCS型项目中支持UNICODE的编辑控件

MBCS型项目中支持UNICODE的编辑控件
EN

Stack Overflow用户
提问于 2013-10-09 12:50:03
回答 2查看 1.9K关注 0票数 2

我有支持MBCS(多字节字符集)的旧MFC应用程序。我有一个与这个CString相关的编辑控件和Control.Now,我希望只有这个控件应该支持UNICODE(UTF-16)字符集。

编辑:

在头文件中:

代码语言:javascript
复制
CString m_SerialNO;

在cpp文件中:

代码语言:javascript
复制
DDX_Text(pDX, IDC_EDIT_SERIAL_NO, m_SerialNO);

我无法将项目的字符集属性从Use Multi-Byte Character Set更改为Use Unicode Character Set

EN

回答 2

Stack Overflow用户

发布于 2013-10-09 14:03:39

只要用CreateWindowA创建编辑控件,所有消息都将通过当前代码页被过滤和转换.即使您使用SetWindowTextW或WM_SETTEXTW,也会发生转换。

票数 0
EN

Stack Overflow用户

发布于 2013-10-10 20:03:03

这其实是相当容易的:

代码语言:javascript
复制
// macro to get buffer size in declare character type
#define _countof(array) (sizeof(array)/sizeof(array[0]))

// text buffer must be in unicode
WCHAR szBufferW[1024];

// retrieve unicode text in MCBS build dialog
::GetDlgItemTextW(this->m_hWnd, IDC_EDIT1, szBufferW, _countof(szBufferW));

// display unicode text in in MCBS build dialog
::SetDlgItemTextW(this->m_hWnd, IDC_EDIT2, szBufferW);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19272535

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档