Главная страница
    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.03 c
2-1140436709
Muha89
2006-02-20 14:58
2006.03.12
прокрутка.


1-1139391952
Silver...
2006-02-08 12:45
2006.03.12
TPageControl + TabPosition=tpBottom + XP = зрительный глюк


2-1140958878
De
2006-02-26 16:01
2006.03.12
как элемент пречисления записать в строку?


2-1140611437
denis24
2006-02-22 15:30
2006.03.12
Удаление контролов с формы в цикле


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