Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

editbox (проблема-йероглифы)

7.5K
21 января 2006 года
sadman
45 / / 21.01.2006
копирую текст (кирилица) из своего editbox'a, а когда куда-нить вставляю - вместо того что было появляются йероглифы. в чем проблема, подскажите.
15K
22 января 2006 года
AndreyD
8 / / 22.01.2006
Цитата:
Originally posted by sadman
копирую текст (кирилица) из своего editbox'a, а когда куда-нить вставляю - вместо того что было появляются йероглифы. в чем проблема, подскажите.


Проверь, типы для кирилицы TCHAR при сообщениях WM_GETTEXT, WM_SETTEXT, LB_GETTEXTEX і т.д и т.п.

7.5K
24 января 2006 года
sadman
45 / / 21.01.2006
Цитата:
Originally posted by AndreyD
Проверь, типы для кирилицы TCHAR при сообщениях WM_GETTEXT, WM_SETTEXT, LB_GETTEXTEX і т.д и т.п.


по-подробней, если можно.

15K
25 января 2006 года
AndreyD
8 / / 22.01.2006
Цитата:
Originally posted by sadman
по-подробней, если можно.



Во-первых: проверь флажки стиля твоего EditBox. Может быть, что там выставлен ES_OEMCONVERT.
Во-вторых: можно использовать функцию SendDlgItemMessage(HWND hDlg, int nIDDlgItem, UINT Msg, WPARAM wParam, LPARAM lParam), кокая будет иметь такой вид :

SendDlgItemMessage(
hDlg,//твой хендл на окно-отец
IDC_EDIT1,//твой контрол - он же edit-сорец
EM_GETLINE,//message на прием строки
null, // если edit-свойсво single, иначе - номер строки, с которой вытянуть текст
&buff);// где buff - TCHAR buff[512];
все - в buff - строка юникод или ансі.

запихать в EDIT так:
SendDlgItemMessage(hDlg, IDC_EDIT1, WM_SETTEXT, wparam, lparam);
одним словом, суть такова, что буфер-приемник должен быть TCHAR-массивом...
и все операции над буфером должны быть исполнены функциями, что поддержывают как UNICODE, так и ANSI. Почитай MSDN - там все напИсано. если совсем ничего не получиться - кидай на мыло - помогу... ;)

P.S: убедись, что приемник - тоже может раюотать с UNICODE-ANSI.

7.5K
25 января 2006 года
sadman
45 / / 21.01.2006
как оказалось, проблема заключалась в виндовском баге. после запксуа файла .reg с текстом

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
@="c_1251.nls"
"1250"="c_1251.nls"
"1252"="c_1251.nls"

усе заработало :)
15K
26 января 2006 года
AndreyD
8 / / 22.01.2006
Цитата:
Originally posted by sadman
как оказалось, проблема заключалась в виндовском баге. после запксуа файла .reg с текстом

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
@="c_1251.nls"
"1250"="c_1251.nls"
"1252"="c_1251.nls"

усе заработало :)



пути виндозы неисповедимы :)

7.5K
26 января 2006 года
sadman
45 / / 21.01.2006
Цитата:
Originally posted by AndreyD
пути виндозы неисповедимы :)


эх Билли, Билли...если-бы его заставили платить за каждый виндозный баг по баксу, он-бы пожалуй обанкротился, да еще и в долги-бы влез немалые :D

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог