Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi2007 и unicode / 11 сообщений из 11, страница 1 из 1
02.03.2018, 23:26
    #39609868
Oleg6619
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi2007 и unicode
Добрый день!
Как получить unicode текст из обычного TMemo?
В последних версиях Windows в TMemo unicode-текст отображается (см. рис) и даже копируется. А как его программно получить (без clipboard) ?
Если делать так:

Код: pascal
1.
2.
 GetWindowTextW(mmo1.Handle, buff, 1024);
  MessageBoxW(0, buff, nil, MB_OK);


то получаем вопросительные знаки.

Если бы на экране не было иероглифов, то вопросов нет. Нельзя и всё.
НО, на экране же есть, значит можно ка-то получить. А КАК?
...
Рейтинг: 0 / 0
02.03.2018, 23:28
    #39609869
Oleg6619
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi2007 и unicode
Добавление: по ряду причин перейти на новые версии не получается.
...
Рейтинг: 0 / 0
03.03.2018, 00:02
    #39609879
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi2007 и unicode
...
Рейтинг: 0 / 0
03.03.2018, 07:55
    #39609899
Сюзанна
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi2007 и unicode
Utf8ToAnsi
...
Рейтинг: 0 / 0
03.03.2018, 12:30
    #39609965
Oleg6619
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi2007 и unicode
rgreat,

Про TNT я в курсе, но хотелось бы обойтись имеющимися. Мне надо всего в двух TMEMO во всем проекте (там более 200 форм) организовать ввод unicode-символов. И для этого привязывать целую библиотеку... Как-то не "комильфо"...
...
Рейтинг: 0 / 0
03.03.2018, 12:34
    #39609969
YuRock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi2007 и unicode
Oleg6619rgreat,

Про TNT я в курсе, но хотелось бы обойтись имеющимися. Мне надо всего в двух TMEMO во всем проекте (там более 200 форм) организовать ввод unicode-символов. И для этого привязывать целую библиотеку... Как-то не "комильфо"...
Если 2 окошка на весь проект - так создай их через CreateWindowW и не парься.
...
Рейтинг: 0 / 0
03.03.2018, 15:24
    #39610023
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi2007 и unicode
Создайте субкласс для этих мемо через
Код: pascal
1.
SetWindowLongW(Memo.Handle, GWL_WNDPROC, MyWndProc)

и будет у Вас мемо юникодной.
...
Рейтинг: 0 / 0
03.03.2018, 16:27
    #39610042
Oleg6619
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi2007 и unicode
_Vasilisk_,
Пока не получилось...
GetWindowTextW так и выдает вопросы...
...
Рейтинг: 0 / 0
03.03.2018, 16:37
    #39610046
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi2007 и unicode
Oleg6619Пока не получилось...Код покажите? Особенно код MyWndProc
...
Рейтинг: 0 / 0
03.03.2018, 16:44
    #39610048
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi2007 и unicode
Oleg6619,

Вырежи TtntMemo из библиотеки и встрой в свой проект.
...
Рейтинг: 0 / 0
04.03.2018, 12:16
    #39610177
Oleg6619
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi2007 и unicode
rgreat,
Так и сделаю.
+ сделал Tmemo=tTNTMemo и код менять не пришлось.

Спасибо. Тема закрыта.
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi2007 и unicode / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]