当 UNICODE 字符 U+0103 是添加到列表框中的字符串的一部分时,我无法打印该字符
这是 UNICODE 的前 256 个字符之后的一个字符,更准确地说 U+0103 是根据
的第 259 个字符https://en.wikipedia.org/wiki/List_of_Unicode_characters
TCHAR szBuffer[_CVTBUFSIZE];
swprintf_s(szBuffer, _CVTBUFSIZE, TEXT("rom\u00e2n\u0103"));
MessageBox(NULL, szBuffer, NULL, NULL);
工作正常,但如果我将 szBuffer 添加到列表框
SendMessage(hLanguages, LB_ADDSTRING, NULL, (LPARAM)szBuffer);
正确写入 U+00e2 字符,但下一个 U+0103 不正确
我会首先尝试为列表框设置另一种字体。例如:
HFONT font = (HFONT)GetStockObject(DEFAULT_GUI_FONT);
SendMessage(listboxHWND, WM_SETFONT, WPARAM (font), TRUE);
Lisbox 可能会显示未知字体的“框”,看起来像字母 I。