Поиск:

Ответ в темуСоздание новой темы Создание опроса
> TFindDialog 
V
    Опции темы
mr.Anderson
Дата 2.1.2006, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 3
Всего: 128



Плиз, подскажите, как заставить его работать?! Вызвать-то его функцией Execute() не так сложно. А вот как сделать, чтобы он в TRichEdit искал и выделял?

Так. Это получилось сделать. Но есть проблема: он выделяет текст только после нажатия кнопки "отмена" в диалоговом окне поиска. А должен прямо как найдет. Как это сделать?

Это сообщение отредактировал(а) sim7 - 2.1.2006, 18:58


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
BreakPointMAN
Дата 2.1.2006, 20:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 15.9.2004
Где: Saratov

Репутация: 6
Всего: 24



Покажи, что и как ты там сделал... smile


--------------------
"Разруха не в клозетах, а в головах." © Ф.Ф. Преображенский (М.Булгаков, "Собачье сердце")
PM WWW ICQ   Вверх
mr.Anderson
Дата 2.1.2006, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 3
Всего: 128



Код

if(FindDialog1->Execute())
 {
  RichEdit1->SelStart=RichEdit1->Text.Pos(FindDialog1->FindTextA)-1;
  RichEdit1->SelLength=FindDialog1->FindTextA.Length();
 }



--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
Partizan
Дата 3.1.2006, 01:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 7
Всего: 67



Тебе следует это всё запихнуть в обработчик события OnFind smile (Само собой кроме FindDialog1->Execute();)


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
BreakPointMAN
Дата 3.1.2006, 01:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 725
Регистрация: 15.9.2004
Где: Saratov

Репутация: 6
Всего: 24



sim7, почитай Архангельского... в конце концов, сколько можно?.. почти все вопросы, которые ты задаешь, в книге "Программирование в C++ Builder" у него рассмотрены прекрасно... а еще примеры, поставляемые с самим Builder'ом посмотри, кажется, там было с поиском что-то... smile


--------------------
"Разруха не в клозетах, а в головах." © Ф.Ф. Преображенский (М.Булгаков, "Собачье сердце")
PM WWW ICQ   Вверх
mr.Anderson
Дата 3.1.2006, 19:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 3
Всего: 128



Partizan, я уже пробовал. Все равно выделение происходит после выхода из диалогового окна поиска. А не до этого.

BreakPointMAN, я уже второй день разыскиваю, где эту книженцию скачать. Старая ссылка (из раздела этого форума "Литература") уже не работает. Может, вы дадите?


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
codelord
Дата 3.1.2006, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 777
Регистрация: 7.5.2005
Где: ты моя темноглаза я где?!

Репутация: 16
Всего: 39



http://www.megaupload.com/ru/?d=UL2R8FYL
там надо немного подождать (сек 40 )после чего нажать появившуюся кнопочку для закачки

Это сообщение отредактировал(а) codelord - 3.1.2006, 20:51


--------------------
Доступен поиск по исходным кодам в GOOGLE.
http://www.google.com/codesearch
PM MAIL   Вверх
Partizan
Дата 3.1.2006, 23:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 7
Всего: 67



Цитата(sim7 @ 3.1.2006, 19:54)
Partizan, я уже пробовал. Все равно выделение происходит после выхода из диалогового окна поиска. А не до этого.

smile эххх...зелень(не обижайся smile это я так...любя...)..

Первое, что приходит в голову - передать фокус RichEditу...впоследствии можно возвращать фокус в FindDialog...
Код

  RichEdit1->SelStart=RichEdit1->Text.Pos(FindDialog1->FindTextA)-1;
  RichEdit1->SelLength=FindDialog1->FindTextA.Length();
  RichEdit1->SetFocus();


p.s. кстати...не забудь, что пользователь ждёт при каждом нажатии "Найти далее" следующего вхождения в тексте...поэтому надо реалиховать обработчик метода OnFind соответствующим образом...то есть чтобы всё было красиво, код нужно немного поменять...

Это сообщение отредактировал(а) Partizan - 3.1.2006, 23:33


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
mr.Anderson
Дата 4.1.2006, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 3
Всего: 128



Цитата
код нужно немного поменять

Вввввв, как же я не люблю намеки... smile Особенно в программировании. В каком смысле чуток поменять? Это как? Хоть принцип какой?


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
Guest
Дата 5.1.2006, 10:31 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











smile klassnie smily smile
  Вверх
mr.Anderson
Дата 5.1.2006, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 3
Всего: 128



Спасибо, Guest, мне сильно помог ваш ответ.

В общем, у меня все получилось. Отдельное спасибо Codelord'у, предоставившему мне примеры, в которых мне удалось разобраться.

Это сообщение отредактировал(а) sim7 - 5.1.2006, 17:25


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0546 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.