Форум: "Начинающим";
Текущий архив: 2008.10.12;
Скачать: [xml.tar.bz2];
Вниз
richedit и ??????? вместо кириллицы Найти похожие ветки
← →
fellow (2008-09-01 16:39) [0]Приветствую!
копирую текст (путь) из коммандной строки проводника с содержанием кириллицы при английской раскладке (языке ввода), вставляю в richedit при любой раскладке, вместо кириллицы - вопросительные знаки, если копировалось из проводника когда для него активна русская раскладка, то при вставке в richedit все в порядке..
помогите сделать корректную вставку кириллицы..
пока решения найти не удалось..
← →
Ega23 © (2008-09-01 16:44) [1]
> помогите сделать корректную вставку кириллицы..
переключай на русскую раскладку.
Это фишка известная.
← →
Правильный$Вася (2008-09-01 16:50) [2]
> переключай на русскую раскладку.
перед копированием в буфер
← →
Anatoly Podgoretsky © (2008-09-01 16:51) [3]Что такое "коммандной строки проводника "
← →
fellow (2008-09-01 16:53) [4]
> переключай на русскую раскладку.
> Это фишка известная.
спасибо, конечно :)
есть ли способ без переключения раскладки?
← →
fellow (2008-09-01 16:55) [5]
> Что такое "коммандной строки проводника "
> <Цитата>
та которая называется "Адрес" (извиняюсь за путаницу)
← →
Ega23 © (2008-09-01 16:56) [6]
> есть ли способ без переключения раскладки?
Не знаю. Знаю, что этим грешат очень многие текстовые редакторы. Например, из редактора delphi код копируешь, чтобы сюда, на форум вставить - такая же фигня. Из QueryAnalyzer - тоже. Ну и т.д. и т.п.
← →
fellow (2008-09-01 17:43) [7]вот проверил на XP sp3 со свежими обновлениями - там копирование вставка так как нужно независимо от раскладки клавиатуры...
← →
Ega23 © (2008-09-01 17:46) [8]
> вот проверил на XP sp3 со свежими обновлениями
Вот на xp sp2, вставка из редактора Delphi сюда, с английской раскладкой:// TODO : procedure TWebSrv.OnAccRoleSelIDsReply( âûáîðêà
С русской раскладкой:/// TODO : procedure TWebSrv.OnAccRoleSelIDsReply( выборка
← →
fellow (2008-09-01 17:52) [9]вот нашел такое:
type
TLangClipboard = class(TClipboard)
private
procedure SetCodePage(const CodePage: longint);
public
procedure Open; override;
procedure Close; override;
end;
implementation
procedure TLangClipboard.Close;
begin
SetCodePage(LangManager.LanguageID);
inherited;
end;
procedure TLangClipboard.Open;
begin
inherited;
SetCodePage(LangManager.LanguageID);
end;
procedure TLangClipboard.SetCodePage(const CodePage: longint);
var Data: THandle;
DataPtr: Pointer;
begin
Data:= GlobalAlloc(GMEM_MOVEABLE + GMEM_DDESHARE, 4);
try
DataPtr := GlobalLock(Data);
try
Move(CodePage, DataPtr^, 4);
SetClipboardData(CF_LOCALE, Data);
finally
GlobalUnlock(Data);
end;
except
GlobalFree(Data);
end;
end;
initialization
FClipboard:= TLangClipboard.Create;
OldClipboard:= SetClipboard(FClipboard);
if OldClipboard <> nil then OldClipboard.Free;
но так как новичек, не знаю как это использовать...
там где нашел, говорят помогает...
← →
{RASkov} © (2008-09-01 18:52) [10]> [9] fellow (01.09.08 17:52)
вместо clipbrd(или как он там, стандартный, там где описан TClipboard) используй данный юнит... Т.е. кусок текста нужно оформить и сохранить как модуль делфи... Далее, как я уже говорил в uses его в своем проекте...
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.10.12;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.053 c