Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Поиск в цикле

496
07 июня 2004 года
Jes
81 / / 28.03.2003
Приветстую всех...Народ подскажите как осуществить поиск в цикле (тоесть):
for (int u = 0; u<TreeView1->Items->Count; u++ ){
if ( TreeView1->Items->Item->Text.SubString(1, Edit3->Text.Length()).UpperCase() == Edit3->Text.UpperCase()){
TreeView1->Select(TreeView1->Items->Item);
break;
}}
это сам поиск, как его изменить что-бы при нахождении слова(или букв), при нажатии на кнопку далее(например) поиск продолжался(я так понимаю нужно запоминать индекс найденного совпадения, но какс ним работать далле не пойму)...
Помогите кодом или советом....

За ранее благодарен.......
460
07 июня 2004 года
Berg
261 / / 27.03.2003
Ну, например, оформите ваш поиск в виде функции, которая в качестве параметра принимает индекс MyInd; И замените for (int u = 0... на for (int u = MyInd... Или я что-то не догоняю...

P.S. Мне кажется в дереве имеет смысл искать на
"текущем" уровне иерархии, а не среди всех узлов. Впрочем, может и нет...
2.0K
07 июня 2004 года
Fazil6
126 / / 17.12.2003
Цитата:
Originally posted by Berg
Ну, например, оформите ваш поиск в виде функции, которая в качестве параметра принимает индекс MyInd; И замените for (int u = 0... на for (int u = MyInd... Или я что-то не догоняю...

P.S. Мне кажется в дереве имеет смысл искать на
"текущем" уровне иерархии, а не среди всех узлов. Впрочем, может и нет...



ничего не надо запоминать.
Если найдено и надо остановиться до действия оператора, надо просто в этом месте показать форму методом ShowModal(). И проанализировать, что будет нажато. Например в свойстве ModalResult кнопки "Далее" установить mrYes, а в кнопке "Отмена" - mrNo.
и получим

if ( TreeView1->Items->Item->Text.SubString(1, Edit3->Text.Length()).UpperCase() == Edit3->Text.UpperCase())
{
TreeView1->Select(TreeView1->Items->Item);

this->Visible=0;

if (this->ShowModal()!=mrYes)
{
break;
}
}




что-то вроде этого.
Только лучше (удобнее) конечно в качестве модального окна использовать отдельное окно с 2-мя кнопками
if (::MessageBox(0,"Продолжить???????","Что дальше",MB_YESNO)!=mrYes)

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог