Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.24;
Скачать: CL | DM;

Вниз

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

 
Вадим ©   (2003-03-12 15:02) [0]

Здравствуйте.

Создаю новый проект, на форму бросаю кнопку, в обработчике пишу:

procedure ButtonClick(..);
begin
ShowMessage(Clipboard.AsText);
end;

Запускаю свою супер-пупер программу, запускаю блокнот. В блокноте пишу "тест" (русскими символами), переключаюсь на английскую раскладку, копирую написанный текст в буфер обмена. Переключаюсь на свою программу и нажимаю кнопку. Если я все правильно понимаю, то должен буду увидеть сообщение, текст которого будет "тест", но в сообщении в место этого следующий текст: "????".
Этого не происходит, если при копировании текста из блокнота переключиться на русскую раскладку клавиатуры. Тоже самое происходит, если копировать текст из других программ (Проводник, Ворд и т.д.).
Что я делаю не правильно и что я должен сделать, чтобы получить текст, находящийся в буфере обмена без искажения?


 
Clickmaker ©   (2003-03-12 15:40) [1]

procedure TForm1.Button1Click(Sender: TObject);
var
Buf: PWideChar;
hData: THandle;
Str: string;
begin
Clipboard.Open;
try
if Clipboard.HasFormat(CF_UNICODETEXT) then begin
hData := Clipboard.GetAsHandle(CF_UNICODETEXT);
Buf := PWideChar(GlobalLock(hData));
Str := WideCharToString(Buf);
GlobalUnlock(hData);
ShowMessage(Str);
end;
finally
Clipboard.Close;
end;
end;



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

Текущий архив: 2003.03.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
7-76689
Андрей007
2003-01-30 09:50
2003.03.24
Как отследить открытие папки в Windows 98


14-76636
ZORRO
2003-03-07 20:49
2003.03.24
8-е марта


1-76383
Val_123
2003-03-13 09:45
2003.03.24
Сохранение Run Time компонентов


3-76346
gorv
2003-03-05 18:36
2003.03.24
Convert DBF to CSV


3-76362
vvvv
2003-03-05 12:15
2003.03.24
Неправильно показываются данные в DBLookupComboBox