Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.02;
Скачать: CL | DM;

Вниз

Создаю Static... Получаю иероглифы вместо кириллицы.   Найти похожие ветки 

 
alxx ©   (2004-02-27 17:45) [0]

Примерно так это происходит:


CREATESTRUCT cs;
cs.dwExStyle = 0; cs.lpszClass = "STATIC";
cs.lpszName = strText; cs.style = WS_CHILD | WS_VISIBLE;
cs.x = x; cs.y = y; cs.cx = nWidth; cs.cy = nHeight;
cs.hwndParent = hWndParent;
cs.hMenu = (HMENU)4545;
cs.hInstance = ghInst; cs.lpCreateParams = NULL;

ghTitle = CreateWindowEx(cs.dwExStyle, cs.lpszClass, s.lpszName,
                      cs.style, cs.x, cs.y, cs.cx, cs.cy,
                      cs.hwndParent, cs.hMenu, cs.hInstance,
                      cs.lpCreateParams);

HFONT hFont = (HFONT)::SendMessage(hWnd, WM_GETFONT, 0, 0);

LOGFONT logFont;
::GetObject(hFont, sizeof(LOGFONT), &logFont);
lstrcpy( (LPSTR)&logFont.lfFaceName, "Courier" );
logFont.lfWeight = FW_SEMIBOLD;
logFont.lfCharSet = RUSSIAN_CHARSET;

::SendMessage(ghTitle, WM_SETFONT, (WPARAM)hFont, TRUE);



Можно как-то это побороть?


 
alxx ©   (2004-02-27 17:46) [1]

Забыл предпоследнюю строчку вписать:

HFONT hFont = ::CreateFontIndirect(&logFont);


 
alxx ©   (2004-03-02 10:31) [2]

Удалено модератором
Примечание: Создание пустых сообщений


 
panov ©   (2004-03-02 10:59) [3]

А если обратить внимание на Unicode?


 
alxx ©   (2004-03-02 11:03) [4]

Хотелось бы обратить. Надо сделать так:

cs.lpszName = _T("Некоторая строка");

?


 
alxx ©   (2004-03-02 12:02) [5]

Вроде как она не дает засунуть LPWSTR в cs.lpszName... Типы то разные...


 
Игорь Шевченко ©   (2004-03-02 13:09) [6]

alxx ©   (02.03.04 12:02)

А посмотреть, как Delphi"йкий TStaticText работает не помогает ?
У него вроде с русским все нормально


 
alxx ©   (2004-03-02 13:18) [7]

По секрету: мне это надо в VC++... На delphi я бы пожалуй TLabel вставил бы просто...


 
alxx ©   (2004-03-02 14:08) [8]

Все, нашел проблему. Она была в исходной строке.. :)


 
Игорь Шевченко ©   (2004-03-02 14:18) [9]

alxx ©   (02.03.04 13:18)


> мне это надо в VC++...


А какая разница? Вызовы API-функций везде одинаковы.

Ты поделись, отчего проблема решилась, другим людям тоже интересно.


 
alxx ©   (2004-03-02 14:49) [10]

Неверно понял совет... Посмотреть можно было. Но дело оказалось в том, что строка strText читалась из ресурсов, и читалась неверно. Видимо то ли настройка проекта не та, то ли у VC++ проблемы с хранением строк в ресурсе, но это уже другой вопрос :)
А я просто задаю строки не в ресурсах, а прямо в коде и в данном случае меня это устраивает.



Страницы: 1 вся ветка

Текущий архив: 2004.05.02;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.022 c
8-1075755416
crystalmind
2004-02-02 23:56
2004.05.02
Гигантские растры


9-1070221899
G A M E R
2003-11-30 22:51
2004.05.02
Быстрееееее


14-1081329838
BeginEnd
2004-04-07 13:23
2004.05.02
Тема эта, конечно же, звучала...


4-1079030059
BaDeVlad
2004-03-11 21:34
2004.05.02
Как сделать многоуровневую отмену в Richedit?


3-1081234012
Patrick
2004-04-06 10:46
2004.05.02
Использование коллекции Properties для ADODataSet