Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];

Вниз

Поиск в 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.064 c
15-1275547795
Sergey Masloff
2010-06-03 10:49
2010.08.27
Электронные книжки - что купить


15-1272227404
Юрий
2010-04-26 00:30
2010.08.27
С днем рождения ! 26 апреля 2010 понедельник


2-1272283178
Новичек
2010-04-26 15:59
2010.08.27
Как правильно дать на печать принтеру штрих код


3-1243590436
gog
2009-05-29 13:47
2010.08.27
Прочитать unicode данные из Oracle


2-1271062611
vastani
2010-04-12 12:56
2010.08.27
BASM в DELPHI, проблема с Offset`ами





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский