![]() |
ListView Add "Datum" Items
Moin moin,
ich habe eine Funktion geschrieben, die alle Tage in zwischen zwei DateTimePicker ausspuckt. :D Die Tage möchte ich jetzt gerne alle in eine ListView einfügen und zwar in die Dritte Spalte. Wie kann ich das machen? Was ich schon weiß ist das:
Delphi-Quellcode:
Aber da wird ersten nur ein Datum von vielen eingefügt und nicht in die Dritte Spalte.
Listview.Items.Item[0].Caption:='12.02.2009'; //Spalte1 Zeile1
Listview.Items.Item[0].SubItems.Add('12.02.2009'); Danke im voraus :-D |
Re: ListView Add "Datum" Items
Delphi-Quellcode:
Getippt und nicht getestet.
var Item: TListItem;
i: integer; begin for i := 1 to 10 do begin Item := Listview1.Items.Add; Item.Caption := '12.02.2009'; Item.SubItems.Add(''); Item.SubItems.Add('05.05.2009'); end; end; |
Re: ListView Add "Datum" Items
Kann man die SubItems nicht mit einem Index ansprechen:
Delphi-Quellcode:
Listview1.SubItems[2] := "2009-05-12";
|
Re: ListView Add "Datum" Items
Sofern sie vorhanden sind, könnte das auch so gehen (nicht ausprobiert):
Delphi-Quellcode:
Listview1.Items[0].SubItems[2] := '01.01.2009';
|
Re: ListView Add "Datum" Items
@DeddyH
Danke genau das brauchte ich :-D |
Re: ListView Add "Datum" Items
He, moment, die eigentliche Idee stammt von mir. ;)
|
Re: ListView Add "Datum" Items
Heul doch :mrgreen:
|
Re: ListView Add "Datum" Items
Danke an Euch Beiden :-D
Ich will jetzt die Tage mit den Tagen meiner DB vergleichen. Die Tage die identisch sind sollen dann in die Listview rein. Mein Ansatz:
Delphi-Quellcode:
So kommpt aber folgende Fehlermeldung wenn der eines der Tage im Array nicht in der DB vorhanden ist:
var Days ,i,p: integer;
Date : TDatetime; Dates : array of string; var Item: TListItem; x: integer; begin /////////////////////////////////////////////////////////////////////////// /// Definitionen der Variablen x := 0; fehltage_view.Clear; days:=(daysbetween(DateTimeVon.Datetime,DateTimeBis.Datetime )); date := DateTimeVon.Datetime; setlength(dates,days+1); for i := 0 to days do begin dates[i] := datetostr(date) ; date:= (incday(date, 1)); end; for p := 0 to days do begin x := x +1; /////////////////////////////////////////////////////////////////////////// /// DB Fehltage öffnen ADOQuery1.SQL.Text := 'SELECT * FROM `Fehltage` WHERE `Datum` = '''+Dates[p]+''';'; ADOQuery1.Open; /////////////////////////////////////////////////////////////////////////// /// Werte der DB in ListView hinzufügen, wenn vorhanden. Item := Listview.Items.Add; Item.Caption := IntToStr(x) + '.'; Item.SubItems.Add(ADOQuery1.FieldByName('Tag').Value); Item.SubItems.Add(ADOQuery1.FieldByName('Datum').Value); end; end; Zitat:
|
Re: ListView Add "Datum" Items
Du musst auch zuerst abfragen, ob Deine Datenmenge Sätze enthält.
Delphi-Quellcode:
ADOQuery1.Open;
if not ADOQuery1.EOF then begin /////////////////////////////////////////////////////////////////////////// /// Werte der DB in ListView hinzufügen, wenn vorhanden. Item := Listview.Items.Add; Item.Caption := IntToStr(x) + '.'; Item.SubItems.Add(ADOQuery1.FieldByName('Tag').Value); Item.SubItems.Add(ADOQuery1.FieldByName('Datum').Value); end; |
Re: ListView Add "Datum" Items
Super Vielen Dank :-D
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz