Главная страница
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.06 c
2-1273815100
tippa
2010-05-14 09:31
2010.08.27
алгоритм удаления дубликатов из списка


2-1273431911
FIL-23
2010-05-09 23:05
2010.08.27
как пользоваться sql


2-1274079491
pro_xaoc
2010-05-17 10:58
2010.08.27
удаление последнего символа


2-1269587670
Свободный художник
2010-03-26 10:14
2010.08.27
Захват окна


6-1197627723
Palladin
2007-12-14 13:22
2010.08.27
Indy и SSL