Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
|
[Delphi] В смысле, в твоей программе на Delphi? Или в Delphi IDE? 05.10.04 10:24 Число просмотров: 1695
Автор: HandleX <Александр М.> Статус: The Elderman Отредактировано 05.10.04 10:25 Количество правок: 1
|
> Копирую любой текст на русском языке при английской > раскладке в документ офиса XP, получается аброказябра. > меняю раскладку на русскую - копирую - все нормально. > Помогите!!!! > PS Windows, Office XP Ну как бы... такая реализация буфера обмена в NT5 ;-)
А если в своей программе надо текст в клипбоард поместить независимо от раскладки — вот тебе процедура, дарю, пользуйся ;-)
Внимание! Работает только в NT4 и выше, в Win9x НЕ РАБОТАЕТ!
Procedure MoveStrToClipboard(aStr: WideString);
Var
aLen: Integer;
hMem: HGLOBAL;
aMem: Pointer;
Begin
Win32Check(OpenClipboard(0));
Try
aLen := Length(aStr) * 2 + 2;
hMem := GlobalAlloc(GMEM_MOVEABLE OR GMEM_DDESHARE, aLen);
Win32Check(hMem <> 0);
Try
aMem := GlobalLock(hMem);
Move(PWideChar(aStr)^, aMem^, aLen);
GlobalUnlock(hMem);
Win32Check(EmptyClipboard);
Win32Check(SetClipboardData(CF_UNICODETEXT, hMem) <> 0);
Finally
Win32Check(GlobalFree(hMem) = 0);
End;
Finally
CloseClipboard;
End;
End;
---
|
<programming>
|
[Delphi] Русский шрифт в XP 05.10.04 08:31 [n0xi0uzz]
Автор: Вячеслав Статус: Незарегистрированный пользователь
|
Копирую любой текст на русском языке при английской раскладке в документ офиса XP, получается аброказябра. меняю раскладку на русскую - копирую - все нормально.
Помогите!!!!
PS Windows, Office XP
|
|
[Delphi] В смысле, в твоей программе на Delphi? Или в Delphi IDE? 05.10.04 10:24
Автор: HandleX <Александр М.> Статус: The Elderman Отредактировано 05.10.04 10:25 Количество правок: 1
|
> Копирую любой текст на русском языке при английской > раскладке в документ офиса XP, получается аброказябра. > меняю раскладку на русскую - копирую - все нормально. > Помогите!!!! > PS Windows, Office XP Ну как бы... такая реализация буфера обмена в NT5 ;-)
А если в своей программе надо текст в клипбоард поместить независимо от раскладки — вот тебе процедура, дарю, пользуйся ;-)
Внимание! Работает только в NT4 и выше, в Win9x НЕ РАБОТАЕТ!
Procedure MoveStrToClipboard(aStr: WideString);
Var
aLen: Integer;
hMem: HGLOBAL;
aMem: Pointer;
Begin
Win32Check(OpenClipboard(0));
Try
aLen := Length(aStr) * 2 + 2;
hMem := GlobalAlloc(GMEM_MOVEABLE OR GMEM_DDESHARE, aLen);
Win32Check(hMem <> 0);
Try
aMem := GlobalLock(hMem);
Move(PWideChar(aStr)^, aMem^, aLen);
GlobalUnlock(hMem);
Win32Check(EmptyClipboard);
Win32Check(SetClipboardData(CF_UNICODETEXT, hMem) <> 0);
Finally
Win32Check(GlobalFree(hMem) = 0);
End;
Finally
CloseClipboard;
End;
End;
---
|
|
|