Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
For döngüsü - Çözüldü
#1
Merhaba; listviewdeki satırların çıktısını almak istiyorum; bu işlemi kısmen yapıyorum fakat sorun döngüde mi anlayamadım.
listviewdeki listenin arka arkaya eklenmesi lazımken ikinci satırı en üste ekliyor, bu neden olabilir?


var 
  C1, C2, C3, C4, C5, C6: String;
begin
  Printer.BeginDoc;
  Printer.Canvas.Font.Style := [fsBold];
  Printer.Canvas.Textout(10, 100, XKurum);
  Printer.Canvas.Font.Style := [];
  Printer.Canvas.Textout(10, 200, XSube);
  Printer.Canvas.Textout(10, 300, XTelefon);
  Printer.Canvas.Textout(10, 400, XAdres);
  Printer.Canvas.Textout(10, 500, XVergi);
  Printer.Canvas.Font.Style := [];
  Printer.Canvas.Textout(10, 600, '');
  for I := 0 to Pred(ListV.Items.Count) do
  begin
    C1 := ListV.Items[I].SubItems[1] + '  ';
    C2 := ListV.Items[I].SubItems[2] + '  ';
    C3 := ListV.Items[I].SubItems[3] + '  ';
    C4 := ListV.Items[I].SubItems[4] + '  ';
    C5 := ListV.Items[I].SubItems[5] + '  ';
    C6 := '%' + ListV.Items[I].SubItems[6] + ' ';
    Printer.Canvas.Textout(10, I * 700, C1 + C2 + C3 + C4 + C5 + C6);
  end;
  Printer.EndDoc;
end;





Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.
Hayat bazen güzel olabiliyor.
Cevapla
#2
    Printer.Canvas.Textout(10, I * 700, C1 + C2 + C3 + C4 + C5 + C6);

    Printer.Canvas.Textout(10, (I+1) * 700, C1 + C2 + C3 + C4 + C5 + C6);
olarak dener misin?
Cevapla
#3
Subitems 'ı 0 dan başlayarak ekletmeyi dene.
WWW
Cevapla
#4
(24-07-2017, Saat: 13:47)meko Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.
    Printer.Canvas.Textout(10, I * 700, C1 + C2 + C3 + C4 + C5 + C6);

    Printer.Canvas.Textout(10, (I+1) * 700, C1 + C2 + C3 + C4 + C5 + C6);
olarak dener misin?

Dostum oldu fakat, bu seferde listelenen ürünlerin arası çok fazla açık oldu.









(24-07-2017, Saat: 14:16)witalihakko Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Subitems 'ı 0 dan başlayarak ekletmeyi dene.

siz mi yanlış anladınız ben mi sizi anlamadım Subitems neden 0 başlatayım?
Hayat bazen güzel olabiliyor.
Cevapla
#5
var
 baslangic : integer;
 carpan : integer;
.
.
.
baslangic := 600;
carpan := 50;

for I := 0 to Pred(ListV.Items.Count) do
begin
 .
 .
 .
 .
 .
 Printer.Canvas.Textout(10, baslangic + (I+1) * carpan, C1 + C2 + C3 + C4 + C5 + C6);
end;
Cevapla
#6
(24-07-2017, Saat: 16:20)meko Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.
var
 baslangic : integer;
 carpan : integer;
.
.
.
baslangic := 600;
carpan := 50;

for I := 0 to Pred(ListV.Items.Count) do
begin
 .
 .
 .
 .
 .
 Printer.Canvas.Textout(10, baslangic + (I+1) * carpan, C1 + C2 + C3 + C4 + C5 + C6);
end;


Teşekkür ederim...
Hayat bazen güzel olabiliyor.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  ÇÖZÜLDÜ-timer kullanmadan saat kontrolü mümkünmü? sadikacar60 3 130 10-09-2019, Saat: 22:19
Son Yorum: sadettinpolat
  [ÇÖZÜLDÜ] cxgrid hücre formatı wiseman 2 69 10-09-2019, Saat: 13:53
Son Yorum: wiseman
  [ÇÖZÜLDÜ]Server İşletim Sisteminde Çalışan Windows Servis te is not a valid date Hata theSinan 9 237 28-08-2019, Saat: 10:05
Son Yorum: adelphiforumz
  ÇÖZÜLDÜ-daha önce çalışan kod hata veriyor firebird sadikacar60 5 195 25-08-2019, Saat: 21:07
Son Yorum: mcuyan
  ÇÖZÜLDÜ - Veritabanındaki saat alanını düzenleme wiseman 10 377 24-07-2019, Saat: 21:41
Son Yorum: mcuyan



Konuyu Okuyanlar: 1 Ziyaretçi