AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi 7 TListView

Ein Thema von Mazen · begonnen am 30. Jan 2012 · letzter Beitrag vom 31. Jan 2012
Thema geschlossen
Mazen

Registriert seit: 6. Okt 2011
66 Beiträge
 
Delphi 7 Professional
 
#1

Delphi 7 TListView

  Alt 30. Jan 2012, 14:04
Hallo,

ich scheitere jetzt seit geschlagenen 2 Stunden daran, Daten in ein TListView zu bringen.
Nichtmal zur "Entwicklungszeit" bekomm ich das zustande was ich brauche.

Ich brauche eine Tabelle mit 4 Spalten (Col1, Col2, Col3, Col4), diese habe ich meiner Meinung nach auch richtig unter "Colums" eingetragen. Da tauchen die 4 jetzt auch auf. Aber im ListView sind noch keine Überschriften zu sehen.
Also dachte ich mir die werden wohl auftauchen wenn ich Daten hinzufüge, aber durch den "ListView-Eintragseditor" steig ich auch nicht durch, das ist meiner Meinung nach auch ein Editor für ein TreeView? Oo
Und später muss ich ja auch Daten zur Laufzeit einfügen... :/
Die Delphi Hilfe hat mir absolut nicht weitergeholfen und auch Google etc. hat keine nennenswerten Ergebnisse geliefert. Bin ich der einzige der zu dämlich ist diese Komponente zu verwenden? Oo
 
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#2

AW: Delphi 7 TListView

  Alt 30. Jan 2012, 14:06
ViewStyle hast Du auf vsReport gesetzt?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
 
Dawn87

Registriert seit: 15. Feb 2007
Ort: Lüdenscheid
189 Beiträge
 
Delphi XE5 Professional
 
#3

AW: Delphi 7 TListView

  Alt 30. Jan 2012, 14:08
Du hast doch dieses kleine Fenster, was in der IDE schwebt. Das wo die Liste mit deinen Spalten drin ist. Wenn Du dort eine Spalte auswählst, sollte sich der Inhalt des Objektinspektors ändern. Dort kannst Du unter "Caption" dann den Spaltennamen einstellen.

Beim Eintragseditor gilt:
Einträge auf der 1. Ebene entsprechen dem Inhalt der 1. Spalte. Alle Untereinträge entsprechen dann den nächsten Spalten.

Bei der Ansteuerung im Code, gilt auch immer, dass die 1. Spalte über die "Caption"-Eigenschaft angesteuert wird und die retslichen über die StringList "SubItems".

Grüße
Stefan
 
Mazen

Registriert seit: 6. Okt 2011
66 Beiträge
 
Delphi 7 Professional
 
#4

AW: Delphi 7 TListView

  Alt 30. Jan 2012, 14:14
Wow, das ging schnell!
Vielen vielen Dank auch beiden...

Das mit dem vsReport war schonmal entscheidend, und der Tipp das die "Caption" Spalte 1 darstellt und alle weiteren Spalten als "SubItems" angesprochen werden hat mir dann endgültig den Durchbruch gebracht D
Danke
 
Mazen

Registriert seit: 6. Okt 2011
66 Beiträge
 
Delphi 7 Professional
 
#5

AW: Delphi 7 TListView

  Alt 31. Jan 2012, 10:30
Ich hoffe mal nach knapp 24 Stunden ist ein Doppelpost gestattet. Aber wenn ich den letzten Eintrag editiere befürchte ich das könnte untergehen :/

Und zwar gehts jetzt dadrum bestimmt Zeilen im ListView zu färben. Ich habe gelesen das das mit dem Event "CustomDrawItem" des ListView gemacht werden soll. Allerdings funktioniert das bei mir nicht.
Das Prinzip ist folgendes:

Ich habe in meiner "Hauptfunktion" eine Schleife mit der der ListView gefüllt wird. Meine Hoffnung war das das Event "CustomDrawItem" jedesmal aufgerufen wird wenn li.Caption := '...' ausgeführt wird. Bei mir ist es aber so das die Schleife erstmal komplett durchläuft, und erst danach das Event ausgeführt wird (natürlich genausoft wie auch li.Caption aufgerufen wurde, aber das nützt mir nichts, da ich bei Laufzeit in der Schleife eine Variable setze und diese im Event abgefragt wird. Nur das ist natürlich nutzlos wenn li.Caption und das Event nicht abwechselnd aufgerufen werden.

Mein Code im Event sieht so aus:
Code:
if fehlercode = '1 ' then
  begin
    Sender.Canvas.Font.Color := clRed;
    DefaultDraw := True;
  end
  else if fehlercode = '2 ' then
  begin
    Sender.Canvas.Font.Color := clGreen;
    DefaultDraw := True;
  end
  else if fehlercode = '1 2 ' then
  begin
    Sender.Canvas.Font.Color := clBlue;
    DefaultDraw := True;
  end else
  begin
    Sender.Canvas.Font.Color := clDefault;
    DefaultDraw := True;
  end;
 
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

AW: Delphi 7 TListView

  Alt 31. Jan 2012, 10:56
Ich hoffe mal nach knapp 24 Stunden ist ein Doppelpost gestattet. Aber wenn ich den letzten Eintrag editiere befürchte ich das könnte untergehen :/
Wäre es. aber für eine neue Frage mach auch einen neuen Thread auf. Ich schließe dann hier mal. Die ursprüngliche Frage scheint ja geklärt zu sein.
Michael
Ein Teil meines Codes würde euch verunsichern.
 
Thema geschlossen


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz