Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.08.29;
Скачать: [xml.tar.bz2];

Вниз

WideChar в RichEdit   Найти похожие ветки 

 
Ally   (2002-06-26 13:59) [0]

В стандартной программе CharMap выбран юникодовский шрифт (Courier New), где поле "Group By" имеет значение Unicode Subrange, а оттуда выбрана категория Box Drawings. Из него выбраны и скопированы в клипборд символы, не попадающие в диапазон Ansi"шных символов. Из клипборда этот набор символов копируется в RichEdit без изменения начертания символов. Из того же клипборда берется та же самая строка с использованием формата CF_UNICODETEXT в переменную типа PWideChar и устанавливается в RichEdit"e с помощью функции SendMessageW(), передающей сообщение WM_SETTEXT. При этом начертание символов становится другим, но похожим по форме, т.е. символ "уголок" преобразуется в "L" или горизонтальная черта - в минус. Что здесь можно сделать, чтобы все отображалось корректно?

Вот код:

var
c: TClipBoard;
w: PWideChar;
begin
c := TClipBoard.Create;
w := PWideChar(c.GetAsHandle(CF_UNICODETEXT));
SendMessageW(RichEdit1.Handle, WM_SETTEXT, 0, Longint(w));
end;


P.S. Если использовать функцию SendMessageA(), то вместо текста получаются кракозябры.

Заранее признателен, Ally.


 
Prooksius   (2002-06-26 17:29) [1]

Попробуй использовать RxRichEdit.



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

Форум: "WinAPI";
Текущий архив: 2002.08.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.009 c
1-95828
Brand
2002-08-17 00:05
2002.08.29
Как поступить?


1-95843
Александр
2002-08-16 21:44
2002.08.29
OpenDialog


3-95689
Kinder
2002-08-07 15:04
2002.08.29
Копирование баз


1-95758
CashDi
2002-08-19 13:21
2002.08.29
регулярные выражения


4-96027
Behemoth
2002-06-20 13:45
2002.08.29
Как заставить работать user.exe под WinXP





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский