Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

unicode charset [D6, WinXP]


Johnny Raw ©   (2004-07-25 16:30:00) 

Здрасте, кто-нить как в мемо загрузить текстовый файл в unicode кодировке?


olookin   (2004-07-28 20:43:00) [1]

[1] Anatoly Podgoretsky ©   (25.07.04 17:04)
Как-то добрые дяди (или тети) дали код на вставку из буфера в формате Unicode. Вставку в TMemo конечно. Уверены что TMemo не поддерживает?

procedure PutStringIntoClipBoard(const Str: WideString);
var Size: Integer;
   Data: THandle;
   DataPtr: Pointer;
begin
 Size:=Length(Str);
 if Size=0 then exit;
 if not IsClipboardFormatAvailable(CF_UNICODETEXT) then
 Clipboard.AsText:=Str else begin Size:=Size shl 1 + 2;
 Data:=GlobalAlloc(GMEM_MOVEABLE+GMEM_DDESHARE,Size);
 try DataPtr:=GlobalLock(Data);
 try Move(Pointer(Str)^,DataPtr^,Size);
 Clipboard.SetAsHandle(CF_UNICODETEXT,Data);
 finally GlobalUnlock(Data); end;
 except GlobalFree(Data); raise; end; end;
end;

function GetStringFromClipboard: WideString;
var Data: THandle;
begin
 if not IsClipboardFormatAvailable(CF_UNICODETEXT) then
 Result:=Clipboard.AsText else begin Clipboard.Open;
 Data:=GetClipboardData(CF_UNICODETEXT);
 try if Data<>0 then Result:=PWideChar(GlobalLock(Data)) else
 Result:=''; finally
 if Data <> 0 then GlobalUnlock(Data); Clipboard.Close; end; end;
end;


Johnny Raw   (2004-07-28 18:30:00) [2]

Так все-таки, как мне в грид юникод строку запихать


Piter   (2004-07-27 00:55:00) [3]

wnew ©   (25.07.04 19:06) [5]
RichEdit  и TLabel соображают в UNICODE


правда? Первый раз слышу.. а что, если написать Label1.Caption := 'уникод строка' - то все отобразится корректно?!


Johnny Raw   (2004-07-26 18:59:00) [4]

а как можно это конвертировать? мне нужен русский и немецкий алфавит.


wnew   (2004-07-25 19:06:00) [5]

RichEdit  и TLabel соображают в UNICODE.


Piter   (2004-07-25 18:56:00) [6]

Да, ни один контрол VCL не поддерживает unicode - ищи сторонник компоненты-контролы или перед загрузкой конвертируй unicode в ANSI с учетом некой кодовой страницы (русской, если текст русский или дефолтной юзерской)


Anatoly Podgoretsky   (2004-07-25 18:52:00) [7]

Сказу больше VCL юникод не поддерживает


Johnny Raw   (2004-07-25 17:26:00) [8]

Да мне собственно мемо и не нужно, но как я посмотрю и то что мне нужно(StringGrid и ListBox)тоже его не поддерживают. А есть что нибудь что юникод поддерживает?


Anatoly Podgoretsky   (2004-07-25 17:04:00) [9]

А смысл, TMemo юникод не поддерживает


Наверх

Титульная страница Поиск, карта сайта Написать письмо