Jess |
Отправлено: 23.12.2003, 02:29 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 70
|
Привет всем....подниму тему поиска ещё раз...
поиск реализован так:
for (int i=0; iItems->Count; i++){
if ( TreeView1->Items->Item[i]->Text.SubString(1, Edit2->Text.Length()).UpperCase() == Edit2->Text.UpperCase()){
TreeView1->Select(TreeView1->Items->Item[i]);
break;
}}
НО находя первую нужную страницу, дальше не хочет искать(по-ходу из-за брейка)...а как дать проге понять, что при нажатии ещё раз на кнопку искать дальше ту-же комбинацию что задана???
и фокус выделял-бы, то-что нашёл в treeview'e..........
Спасибо за ранее...................................
|
|
Nick |
Отправлено: 23.12.2003, 08:59 |
|
Машинист паровоза
Группа: Участник
Сообщений: 247
|
Замени i=0 на i=Следущий итем |
|
** Jess |
Отправлено: 24.12.2003, 03:05 |
|
Не зарегистрирован
|
пользователь тыкнул на поиск нашёл что-то, второй раз тыкнул — нашёл тот-же текст только дальше...и т.д.
приведи или алгоритм или часть кода...
а то чо-то Я не догнал............ |
|
Nick |
Отправлено: 24.12.2003, 09:16 |
|
Машинист паровоза
Группа: Участник
Сообщений: 247
|
int startSearch = 0;
void Search( )
{
int i;
for (i=startSearch; iItems->Count; i++){
if ( TreeView1->Items->Item[i]->Text.SubString(1, Edit2->Text.Length()).UpperCase() == Edit2->Text.UpperCase()){
TreeView1->Select(TreeView1->Items->Item[i]);
break;
}}
startSearch = i+1; // может +1 не надо
};
startSearch объяви вне процедуры и обнуляй при новом условии поиска. |
|
** Jess |
Отправлено: 26.12.2003, 01:31 |
|
Не зарегистрирован
|
Спасибо брат, помог нормально......
Закрываю тему....... |
|