Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

Поиск в StringGrid ...   Найти похожие ветки 

 
kos123 ©   (2010-04-19 17:23) [0]

Добрый день!
Помогите разобраться. Осуществляю поиск в StringGrid.
StringGrid1 - колонка1 - шаблон. По этой колонке ищу артикулы во втором и третьем и добавляю соотв. во вторую и третью колонки. Во втором гриде колонка с записями идентична (все нормально), а в третьем записи разбросаны по колонке или отсутствуют.

procedure TForm2.SpeedButton14Click(Sender: TObject);
var
i, ipM, s1, s2 : integer;
begin
s1 := RzStringGrid4.RowCount;
s2 := RzStringGrid5.RowCount;
for ipM := 1 to s1 do
begin
Edit5.Text := RzStringGrid7.Cells[1, ipM];
for i:=1 to s2 do
begin
{артикул найден}
if RzStringGrid5.Cells[2, ipM] <> Edit5.Text then
begin
RzStringGrid7.Cells[2, ipM] := RzStringGrid5.Cells[2, ipM];
Edit5.Text := RzStringGrid7.Cells[1, ipM+1];
end
{артикул НЕ найден}
else
RzStringGrid7.Cells[2, ipM] := "";
Edit5.Text := RzStringGrid7.Cells[1, ipM+1];
break;
end;
end;
end;

Если убираю break то цикл не останавливается, а так находит только первые три записи и выходит из процедуры - условие else не выполняется.


 
Jeer ©   (2010-04-19 17:51) [1]

Красавец !
Продолжай в том же духе.


 
Германн ©   (2010-04-19 18:13) [2]


> Помогите разобраться.

Отформатируешь код, сам найдешь ошибку.


 
И. Павел ©   (2010-04-19 18:57) [3]

Первое, что бросается в глаза - это индексация в StringGrid с 1. Если не ошибаюсь, нужно с нуля.


 
Германн ©   (2010-04-19 19:08) [4]


> Если не ошибаюсь, нужно с нуля.

Скорее нужно до RowCount-1.


 
Jeer ©   (2010-04-19 19:46) [5]


> И. Павел ©   (19.04.10 18:57) [3]


> Германн ©   (19.04.10 19:08) [4]


Безусловно, вы правы оба - и с нуля до *Count - 1.
Тут ведь другое - парень изобретает свой собственный движок аля DBEngine.
Потом у него возникнут вопросы, как ускорить поиск и т.д.

"Если сознание не определило Путь, то путь будет определять сознание" (С)


 
Anatoly Podgoretsky ©   (2010-04-20 14:53) [6]

> И. Павел  (19.04.2010 18:57:03)  [3]

Нужно с того номера, с какого нужно, но очень редко нужно с нулевого номера.



Страницы: 1 вся ветка

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.121 c
2-1271459822
rizhiy87
2010-04-17 03:17
2010.08.27
javascript вDelphi7


2-1265983724
Unior
2010-02-12 17:08
2010.08.27
Как узнать дату понедельника на этой неделе?


15-1271414136
ocean
2010-04-16 14:35
2010.08.27
Блокировать сайты в ISA


2-1273602560
novichek
2010-05-11 22:29
2010.08.27
TCPClient вторая посылка не проходит


4-1226996099
Сергей
2008-11-18 11:14
2010.08.27
Как вывести Диалог свойств Windows К оприделённому файлу ?