Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Добавить в ListView


Автор: WERITAS 28.6.2007, 06:20
Почему не работает вот такой код и как его нужно изменить, чтоб работал:

Код

procedure TForm1.FormCreate(Sender: TObject);
begin
   ListView1.Columns.Add;
   ListView1.Columns.Add;
   ListView1.Columns.Add;

   ListView1.Columns.Items[0].Caption:= 'Число';
   ListView1.Columns.Items[0].Width:= 290;

   ListView1.Columns.Items[1].Caption:= 'Число';
   ListView1.Columns.Items[1].Width:= 40;

   ListView1.Columns.Items[2].Caption:= 'Число';
   ListView1.Columns.Items[2].Width:= 70;
end;

procedure TForm1.Button3Click(Sender: TObject);
var
  k,i:integer;
begin

  // Добавить 1 и 20 только, если их там нет!!!

  ListView1.Items.Add;
  k:= 0;
  
   for i:=0 to ListView1.Items.Count-1 do
    if ((ListView1.Items[i].Caption = '1') AND
        (ListView1.Items[i].SubItems[1] = '20'))  then
       inc(k);

   if(k=0) then
    begin
      ListView1.Items.Add;
      ListView1.Items[0].Caption:= '1';
      ListView1.Items[0].SubItems[1]:= '20';
    end;

end;



Почему-то не работает проверка
Код

for i:=0 to ListView1.Items.Count-1 do
    if ((ListView1.Items[i].Caption = '1') AND
        (ListView1.Items[i].SubItems[1] = '20'))  then
       inc(k);


Сразу скажу, что с ListView'ом Я - дилетант smile

Автор: Snowy 28.6.2007, 10:41
Не создал субитемсы.
Код

  with ListView1.Items.Add do
  begin
    Subitems.Add('0');
    Subitems.Add('0');
    Subitems.Add('0');
  end;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)