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

Вниз

Поиск русского текста в RichEdit   Найти похожие ветки 

 
A1ex   (2004-03-22 14:27) [0]

Вопрос такого плана. В RichEdit осуществляется поиск кусков текста. Если это английский - проблем нет, все работает. Если искомый текст - кирилица, то упрямо не видит его при поиске. Должно ли так быть и если да, то как можно обойти. Не охота самому писать продцедуру поиска... Текст загружается из  файла как reText. KOL1.90
WinXP если это важно.


 
Gandalf ©   (2004-03-22 18:18) [1]

Код в студию.


 
<Falcon>   (2004-03-23 09:27) [2]

Проверь свойства AutoKeybdSet, AutoKeyboard


 
<Falcon>   (2004-03-25 11:36) [3]

Между прочим, о поиске, обнаружил вот такую забавную вещь.
Если присвоить строковой переменной значение строки RichEdit, то
вместо кирилицы получим мусор. т.е.
RichEdit1.Items[i]    ---    "some text   и тут текст"
 теперь делаем:
             Str:=RichEdit1.Items[i];
 имеем:
Str    --- "some text   "а тут уже мусор""  

Естесвенно имеется в виду что текст загружен как reText.

Теперь еще вопрос, почему при поиске кирилицы имеет значение текущая расскладка клавиатуры. При русской - текст находится, при английской - нет. Это как-то нехорошо.

Кто может просвятить?


 
Gandalf ©   (2004-03-25 22:52) [4]

Повоторюсь - код в студию! Ваш Код поиска.


 
<Falcon>   (2004-03-29 16:10) [5]

Вот код:

procedure TForm1.Button1Click(Sender: PObj);
var
Dest : string;
begin
 if OpenSaveDialog1.Execute then
   begin
     RichEdit1.RE_LoadFromFile(OpenSaveDialog1.Filename,reText,False);
     Dest:=RichEdit1.Items[1];
     ShowMessage(Dest);
   end;
end;

procedure TForm1.Button2Click(Sender: PObj);
var
RF : integer;
begin
//  ActivateKeyboardLayout(LoadKeyboardLayout("00000419",KLF_ACTIVATE), KLF_REORDER);
 RF:=RichEdit1.RE_SearchText(EditBox1.Text,True,True,True,0,-1);
 if RF >=0 then
   begin
     RichEdit1.SelStart:=RF;
     RichEdit1.SelLength:=Length(EditBox1.Text);
   end else ShowMessage("String not found!");
end;

procedure TForm1.KOLForm1FormCreate(Sender: PObj);
begin
 RichEdit1.Font.FontCharset:=RUSSIAN_CharSet;
end;

end.

Текстовый файл - для примера 1 сторока : "some text  и тут текст"
Вот собственно и все...


 
Gandalf ©   (2004-03-29 17:13) [6]

M$ по этому поводу молчит, попробуй дедовский способ через Pos.


 
<Falcon>   (2004-03-29 18:39) [7]

Уже сделал :-)  Хотелось просто с этим разобраться... Особенно почему

 Dest:=RichEdit1.Items[1];

мусор выдает.



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

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

Наверх




Память: 0.48 MB
Время: 0.021 c
3-1092839711
Uran
2004-08-18 18:35
2004.09.12
Проблеммы с кодировкой в файле DB


3-1092680411
Java73
2004-08-16 22:20
2004.09.12
Проблема с выводом данных


1-1093525524
AlexXn
2004-08-26 17:05
2004.09.12
Тэги HTML


1-1093603807
cvg
2004-08-27 14:50
2004.09.12
Как вывести название кривой в TChart?


6-1088927973
Интересующийся
2004-07-04 11:59
2004.09.12
TServerSoket без формы