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

Вниз

проблема с кодировкой при копированиии в буфер   Найти похожие ветки 

 
MetalFan ©   (2006-02-06 10:22) [0]


uses Clipbrd;
...
var
 lStr: string;
begin
 ....
 lStr := memo1.lines.text;
 ....
 Clipboard.AsText := lStr;
end;

казалось бы все должно быть в порядке...
но если у текущего (приложения)окна , где выполняется этот код, включена английская раскладка клавиатуры, а копирутеся кириллица, то при вставке (в браузер) получаем нечитаемый текст(((
кто знает как лечить?!
да, WinXP SP2, D5 sp1.


 
wal ©   (2006-02-06 10:27) [1]


> кто знает как лечить?!
Переключением раскладки.


 
Альф   (2006-02-06 10:34) [2]

>Переключением раскладки.

примерно так

 ActivateKeyboardLayout(SUBLANG_DEFAULT shl 10 + LANG_RUSSIAN, 0);


 
MetalFan ©   (2006-02-06 10:48) [3]

пока я так и сделал... но в чем может быть проблема?! причем тут буфер и активная раскладка клавы?


 
Desdechado ©   (2006-02-06 10:59) [4]

это фишка "интеллекта винды"
http://delphimaster.net/view/2-1139141002/


 
MetalFan ©   (2006-02-06 12:31) [5]

кроме варианта переключения раскладки, как я понял, больше ничего не поделаешь?


 
capkoh ©   (2006-02-06 17:44) [6]

Можно еще как CF_UNICODETEXT копировать, но для этого нужно чуть углубиться в TClipboard и преобразовать строку в Unicode. Точнее смотри TClipboard.Set(Get)Buffer > Set(Get)ClipboardData.
Мне не удалось избавиться от закорючек другими (не переключающими раскладки) методами, кроме как описанным выше.

Удачи!


 
Leonid Troyanovsky ©   (2006-02-06 19:36) [7]


> MetalFan ©   (06.02.06 12:31) [5]
> кроме варианта переключения раскладки, как я понял, больше
> ничего не поделаешь?



var
 h:THandle;
begin
 Clipboard.Open;
 Clipboard.AsText := Memo1.Text;
 h := Clipboard.GetAsHandle(CF_TEXT);
 SetClipboardData(CF_LOCALE, h);
 Clipboard.Close;
end;

--
Regards, LVT.


 
MetalFan ©   (2006-02-07 16:51) [8]

2 Leonid Troyanovsky
СПАСИБО!!!!


 
REA   (2006-02-08 10:39) [9]

Есть компонент, который подменяет переменную Clipboard и делает примерно то же, что и [7]



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

Форум: "Основная";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.014 c
9-1122381421
Conferno
2005-07-26 16:37
2006.03.12
Поговорим о оптимизации GLScene.


6-1129405704
Volf_555
2005-10-15 23:48
2006.03.12
Определение MAC-адреса УДАЛЁННОГО компьютера


15-1139951775
ArtemESC
2006-02-15 00:16
2006.03.12
Компиляторы...


4-1135151640
vlad_Ladynin
2005-12-21 10:54
2006.03.12
Запись и воспроизведение действий пользователя.


2-1140621520
mihauzen
2006-02-22 18:18
2006.03.12
Чем/как реализовать "многооконность" в одном приложении?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский