![]() |
|
|
![]()
|
|
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 3 Всего: 128 |
Не ругайтесь, это последний вопрос, я думаю... Как выполнить поиск в TМemo? Про поиск в ЛистБоксе rsm мне более-менее объяснил, за что ему отдельное спасибо. Осталось только понять, как же искать строчки в Memo, + разумеется, Memo должно "прокручиваться" до выделенного слова, а слово должно выделяться.
|
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 24 Всего: 98 |
просто так искать не получится -- нет у него соотв. метода => берем memo->Lines->Text b и в нем или вручную ищем или Pos() с последующим удалением найденного текста
позиционирование: SelStart / SelLength -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| mr.Anderson |
|
||||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 3 Всего: 128 |
А вот это еще нафига?! Мне не надо удалять! Мне надо найти! И выделить! Кстати, как выделять, я так и не въехал.... Хотя, может быть, вот так получится? (пишу сходу):
|
||||
|
|||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 24 Всего: 98 |
чтбы последующие вхождения найти ( а не только первое ) читаю тоже сходу... кажись, должно получится. только к x-у длину текста приплюсовывать не нужно -- хватит и просто длины -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| Vyacheslav |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
Элементарно просто, как и все в С++ Builder
Если нужно реализовать пользовательский интерфейс, то достаточно использовать TSearchFind или TSearchFindFirst. Даже кодировать ничего не придется Ах, да. Я и забыл. Вы ведь сторонник делать все ручками Тогда это не пойдет. -------------------- С уважением, Вячеслав Ермолаев |
|||
|
||||
| mr.Anderson |
|
||||||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 3 Всего: 128 |
Что-то я не совсем понял. Можете переделать мой код с вашими поправками?
Да, действительно, это я что-то не то...
Именно так. Я хочу научиться делать все своими руками, чтобы больше знать о языке и программировании вообще. А не пользоваться стандартными компонентами, где уже все реализовано и понимать ничего, кроме алгоритма решения задачи, не нужно. |
||||||
|
|||||||
| _hunter |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 24 Всего: 98 |
есть строка aabbaa как ты собираешся искать вторые aa без удаления первых? -------------------- Tempora mutantur, et nos mutamur in illis... |
||||
|
|||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 3 Всего: 128 |
Смысл понятен. Я имею в виду, что не совсем понял, как это написать. Я еще раз зайду завтра вечером, надеюсь, вы хоть-что нибудь напишете...
|
|||
|
||||
| Vyacheslav |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
Вроде бы намерения хорошие, только вот реализация ... Я бы Вам для начала порекомендовал проштудировать книжку по С++ и по ООП. Дело в том, что судя по вашему коду Вы не учитесь, а усиленно закрепляете Ваши ошибки. А если уж хотите учится и не использовать стандартные компоненты, то почему используете TMemo вместо винконтролов, AnsiString -вместо std::string? И где Ваши собственные классы-адаптеры? Пока имеем в наличии бестолковое использование опять же "стандартных" VCL-компонентов, причем "бестолковость" объясняется желаением сделать самому. -------------------- С уважением, Вячеслав Ермолаев |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 24 Всего: 98 |
да какой алгоритм? сразу после Pos() делаем str.Delete(1, pos + searchStr.Length() - 1);
все P.S. если все своими руками делать -- тогда уже не std::string а char* юзать нужно -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| Vyacheslav |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
все таки std::string. STL входит в стандарт и не явлется чем то левым -------------------- С уважением, Вячеслав Ермолаев |
|||
|
||||
| mr.Anderson |
|
||||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 3 Всего: 128 |
Что-то не получается. Я ввел вот такой код (пока без ваших поправок, hunter):
Програ говорит, что "Указанная строка обнаружена". Однако, найденное не выделяет... Подскажите плиз почему и что надо поправить. Vyacheslav, я в сотый раз повторяю. Какой бы хорошей книга не была, я не могу ее понять! У меня есть книги по C++, по C++ Builder, но я плохо понимаю, когда рядом нет учителя, у которого можно все разъяснить! А учителя-то у меня как раз и нет. Почему я и сижу на этом форуме и надеюсь на помощь через интернет... Поймите правильно мое положение. Я стараюсь, но раз не получается, то что я могу сделать?
Потому что с объектами TMemo и типом AnsiString я познакомился раньше и уже умею хоть немного с ними работать. А другие указанные вами компоненты мне еще незнакомы. Зачем переучиваться? И еще. Раз уж вам так не нравится мое выражение "делать все своими ручками", то замените его на "смешанное программирование". |
||||
|
|||||
| Vyacheslav |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
ОК . Я его заменю на "смешное программирование" -------------------- С уважением, Вячеслав Ермолаев |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 24 Всего: 98 |
sim7, фокус ему отдай: Memo1->SetFocus();
или HideSelection в false поставь -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| mr.Anderson |
|
||||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 3 Всего: 128 |
Знаете, это мне перестает нравиться. То, что вы умеете, это, конечно, плюс вам. Но не нужно смеяться над теми, у кого не получается выучить! hunter, сейчас буду пробовать, спасибо. Добавлено @ 16:54 hunter, я понял, что надо вот так сделать:
Но так не работает. Выделяется только первое найденное. |
||||
|
|||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |