Tüm Platformlar için Hızlı Uygulama Geliştirme Kitabı... Delphi

Konuyu Paylaş : facebook gplus twitter

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 Giriş yap veya Üye Ol
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 Giriş yap veya Üye Ol
    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 Giriş yap veya Üye OlSubitems 'ı 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 Giriş yap veya Üye Ol
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

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  [Çözüldü] Otomatik artan alan değerlerini sıfırlama Lord_Ares 4 109 17-10-2018, Saat: 08:54
Son Yorum: esistem
  [ÇÖZÜLDÜ] Query ismini değişken olarak göndermek Lord_Ares 14 290 12-10-2018, Saat: 12:33
Son Yorum: Lord_Ares
  [Çözüldü] SQL insert ederken autoincrement alan Lord_Ares 10 200 06-10-2018, Saat: 21:08
Son Yorum: Lord_Ares
  CxGrid'de Runtime Filtreleme (Çözüldü) yhackup 1 88 03-10-2018, Saat: 17:04
Son Yorum: adelphiforumz
  [ ÇÖZÜLDÜ ] RAD Studio Community Edition ? Mr.Developer 3 214 11-09-2018, Saat: 10:20
Son Yorum: Mr.Developer



Konuyu Okuyanlar: 1 Ziyaretçi