Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];

Вниз

Поиск русского текста в 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 вся ветка

Форум: "KOL";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.032 c
3-1092395223
REA
2004-08-13 15:07
2004.09.12
Маленький ComboBox


4-1090755241
Itap
2004-07-25 15:34
2004.09.12
"Вытащить" данные из DOS окна


1-1093723576
UserUserov
2004-08-29 00:06
2004.09.12
Как связать программу срасширением?


1-1093511951
ksa2002
2004-08-26 13:19
2004.09.12
Проблема с DateTimePicker


1-1093886760
Lord de Mon
2004-08-30 21:26
2004.09.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
Английский Французский Немецкий Итальянский Португальский Русский Испанский