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

Вниз

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(  &#226;&#251;&#225;&#238;&#240;&#234;&#224;

С русской раскладкой:
/// 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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.021 c
3-1207766708
Delphi7
2008-04-09 22:45
2008.10.12
Access/ADO/Delphi7, Проблема с LookUp-полями


2-1220607629
lordalex
2008-09-05 13:40
2008.10.12
Старый добрый Excel


2-1220854065
Matveih1
2008-09-08 10:07
2008.10.12
Как при загрузке пакета использовать имеющееся подключение к БД?


1-1200405748
istok
2008-01-15 17:02
2008.10.12
передача событий из потока...


15-1219319783
wl
2008-08-21 15:56
2008.10.12
Как изменить цвета всех консолей в WinXP?