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;





Dd5P5o.jpg
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ı:
    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ı: 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ı:
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
  Fastreport İçindekiler Sayfası Oluşturma [ÇÖZÜLDÜ] bydelphi 1 181 18-03-2024, Saat: 12:11
Son Yorum: bydelphi
  Çok Satırlı Filtreleme [Çözüldü] bünyamin68 12 1.253 14-02-2024, Saat: 22:42
Son Yorum: mustafaozpinar
  [ÇÖZÜLDÜ] macos işletim sistemine program yazmak shooterman 5 451 02-02-2024, Saat: 09:54
Son Yorum: shooterman
  COZULDU veritabani prg yerine ne kullanabilirim. sadikacar60 8 694 29-01-2024, Saat: 18:41
Son Yorum: sadikacar60
  DbGrid'de Seçili Satırların Fast Reportta Raporlanması [ÇÖZÜLDÜ] bünyamin68 4 637 17-12-2023, Saat: 15:08
Son Yorum: bünyamin68



Konuyu Okuyanlar: 1 Ziyaretçi