Вывод символов Юникода в CEdit, CComboBox, CListBox
От: RussianFellow Россия http://russianfellow.livejournal.com
Дата: 13.07.16 09:11
Оценка:
Есть символы Юникода (например -- греческая буква  (пи), которой соответствует десятичное значение 112 или шестнадцатеричное значение 0070).
Как программно вывести строку, содержащую такие символы, в компоненты CEdit, CComboBox, CListBox ?
1613 г. = 2024 г.
Re: Вывод символов Юникода в CEdit, CComboBox, CListBox
От: peterbes Россия  
Дата: 13.07.16 09:52
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Есть символы Юникода (например -- греческая буква  (пи), которой соответствует десятичное значение 112 или шестнадцатеричное значение 0070).

RF>Как программно вывести строку, содержащую такие символы, в компоненты CEdit, CComboBox, CListBox ?

Так и выводи

const WCHAR* OMEGA = L"\x03A9"; // Греческая буква омега 
...
pCntrl->SetWindowText(OMEGA);
...
Re[2]: Вывод символов Юникода в CEdit, CComboBox, CListBox
От: RussianFellow Россия http://russianfellow.livejournal.com
Дата: 13.07.16 11:44
Оценка:
Ясно.

Но у меня возникла проблема--я хочу вывести букву ϑ (код Юникода 03D1 http://unicode-table.com/ru/#03D1 ), а вместо неё выводится какой-то китайский иероглиф. В чём причина этого? Как исправить эту ошибку?
1613 г. = 2024 г.
Re[3]: Вывод символов Юникода в CEdit, CComboBox, CListBox
От: Evgeniy Skvortsov Россия  
Дата: 13.07.16 13:07
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Но у меня возникла проблема--я хочу вывести букву ϑ (код Юникода 03D1 http://unicode-table.com/ru/#03D1 ), а вместо неё выводится какой-то китайский иероглиф. В чём причина этого? Как исправить эту ошибку?



Как выводишь? Я попробовал добавить этот символ в текст на EDIT — все в норме.

Может твой шрифт которым рисуется текст не содержит этого символа?
Отредактировано 13.07.2016 13:09 Evgeniy Skvortsov . Предыдущая версия .
Re[4]: Вывод символов Юникода в CEdit, CComboBox, CListBox
От: RussianFellow Россия http://russianfellow.livejournal.com
Дата: 13.07.16 14:09
Оценка:
Здравствуйте, Evgeniy Skvortsov, Вы писали:

ES>Как выводишь? Я попробовал добавить этот символ в текст на EDIT — все в норме.


ES>Может твой шрифт которым рисуется текст не содержит этого символа?


Я сам нашёл свою ошибку--я хотел, чтобы выводилось ϑ0 и поэтому я написал:

m_IDC_EDIT1.SetWindowText(L"\x03d10");


В результате чего у меня вывелся китайский иероглиф.

Вместо этого надо было написать:

wchar_t  ws[10];
wcscpy(ws,L"\x03d1");
wcscat(ws,L"0");
m_IDC_EDIT1.SetWindowText(ws);


и тогда в текстовое поле выводится ϑ0 .
1613 г. = 2024 г.
Re[5]: Вывод символов Юникода в CEdit, CComboBox, CListBox
От: peterbes Россия  
Дата: 13.07.16 19:12
Оценка: -1
Здравствуйте, RussianFellow, Вы писали:

RF>и тогда в текстовое поле выводится ϑ0 .


Строка завершающаяся нулём, это не строка завершающаяся символом "0", учебник что-ли какой-нибудь полистал.
Re[5]: Вывод символов Юникода в CEdit, CComboBox, CListBox
От: Don Reba Канада https://stackoverflow.com/users/49329/don-reba
Дата: 13.07.16 19:39
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Я сам нашёл свою ошибку--я хотел, чтобы выводилось ϑ0 и поэтому я написал:


RF>
RF>m_IDC_EDIT1.SetWindowText(L"\x03d10");
RF>


RF>В результате чего у меня вывелся китайский иероглиф.


L"\u03d10"
Ce n'est que pour vous dire ce que je vous dis.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.