Oper01 |
Отправлено: 23.01.2004, 23:23 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 145
|
Как бы сделать так, чтобы поиск по StringGrid'у осуществлялся следующим образом: задаю искомую комбинацию букв нажимаю кнопку искать, находим строку, удовлетворяющую условию, потом опять нажимаю кнопку поиска, поиск продолжается с этой позиции и далее, если находим, опять нажимаю на поиск — он продолжается и т.д.
Т.е. также, как работает поиск во всех редакторах.
Саму процедуру поиска искомой комбинации букв сделал, а вот не получается его применить вышеизложенным образом. |
|
Nick |
Отправлено: 24.01.2004, 15:23 |
|
Машинист паровоза
Группа: Участник
Сообщений: 247
|
Объяви переменную
int StartFindRow = 0;
for (int i=StartFindRow; i < maxRow; i++)
{
поиск
}
При следующем поиске если параметры поиска изменились
StartFindRow = 0; иначе поиск дальше StartFindRow++;
можно while
|
|
Oper01 |
Отправлено: 24.01.2004, 23:34 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 145
|
Но в таком варианте будут пропущены промежуточные строки, т.е. будет найдена только последняя строка удовлетворяющая условию, а которые были до неё, даже если подходили по формату поиска пролетят, т.к. цикл от строки номер 0 до последней.
Или может быть я не воспринял эту идею, если я не прав, поправьте. Совсем замучался с этим поиском. |
|
Nick |
Отправлено: 25.01.2004, 13:26 |
|
Машинист паровоза
Группа: Участник
Сообщений: 247
|
for (int i=StartFindRow; i < maxRow; i++)
{
if (поиск == true) break; // if (поиск) break;
}
или
int i = StartFindRow;
while (!поиск && i < maxRow) i++; |
|