Die unsichtbaren Listview-Einträge

MacInternet

Mitglied
Hallo,

nachdem ich mich nun ausreichend mit 'Listbox' beschäftigt habe, bin ich zu dem Ergebnis gekommen, das das Steuerelement 'Listview' eigentlich praktischer wäre für mein Projekt. Also spiele ich erst mal ein bisschen mit Listview herum - und stelle ziemlich perplex fest, daß meine Einträge alle "unsichtbar" sind (siehe Anhang).

Die Einträge sind da, werden auch gezählt, ich kann sie anklicken - nur eben nicht sehen! Kann mir bitte jemand erklären, was da schief läuft?
Nein, es ist keine weiße Farbe auf weißem Hintergrund, darauf hab ich schon geachtet. Habe jetzt alle Eigenschaften mehrmals durch - aber bekomme einfach nicht heraus, warum die alle unsichtbar sind, ganz gleich, wie ich die Listview aufbaue.

Und wenn ich schon mal beim Thema Listview bin: warum kann man Elemente eigentlich nicht direkt zuweisen? Ich kann wohl Elemente durch Variablen aufnehmen, aber nicht wie in der Listbox ein Element direkt hinzufügen.

Und last but not least: wo kann ich entsprechende Heinweise zum Umgang mit Listview finden? Hab schon stundenlang gegoogelt, aber nirgendwo die Eigenschaften genauer beschrieben bekommen.

Danke schon mal im voraus,
Mac
 

Anhänge

  • Listview.jpg
    Listview.jpg
    22 KB · Aufrufe: 36
Deine eigentliche Frage kann ich nicht beantworten, aber ich glaube, ich kann dir bei deiner 2. Frage helfen:

Wenn du nur über Variablen bis jetzt hinzugefügt hast, dann schreib mal so:

Visual Basic:
Private Sub Form_Load()
With List1
    .AddItem "seas"
    .AddItem "jeah!"
    .AddItem "sowieso!"
End With
End Sub

Bin mir nicht sicher ob deine Frage wirklich so gemeint war.
 
Mister Master, Dein Beispiel ist für die Listobx, MacInternet sprach aber vom ListView Control. Dieses arbeitet vollkommen anders, und ist meiner Kenntnis nach zu direkten Anbindung an eine Datenbank gedacht.

Ich selbst habe damit noch nicht gearbeitet, da ich für Datenanbindungen andere Controls nutze.

Warum das Listview für Deine Anwendung geeigneter sein soll, kann ich nicht erkennen. Aber wenn Du einfach mit "Add" oder ähnlichem Einträge hinzufügen möchtest, ist die Listbox (wie vom Doc irgendwann empfohlen) wohl das richtige. Oder probier es doch mal mit dem Microsoft Flexgrid. Das ist auch einfach zu handhaben, aber flexibler als die Listbox.

ronaldh
 
Hallo, ronaldh,

danke, das wollte ich gerade mister master schreiben, daß sich sein Beispiel eben nicht aufs Steuerelement Listview bezieht, sondern auf eine einfache Listbox.

Nein, natürlich kannst Du nicht wissen, warum das Element für mein Projekt besser geeignet ist, Du kennst ja gar nicht. Das in dem obigen Beispiel sind nur erste Spielereien des für mich noch unbekannten Elements Listview und hat mit meinem Programm nix zu tun. Mir ist aber bei den Spielereien aufgefallen, daß das direkte Zuweisen eben nicht geht. Hätte mich nur interessiert, wieso nicht. In meinem Prgramm werden eh nur Daten eingelesen.

Deshalb suche ich ja verzweifelt irgendeine Seite, wo dieses Element und seine Eigenschaften mal genauer beschrieben wird. MS hat mir da auch nicht viel weiter geholfen.

Ja und ich suche natürlich immer noch den Grund, warum ich eigentlich nix sehe...

Gruß Mac
 
Häng mal dein Projekt hier gezippt dran damit ich mir das ansehen kann, das ListView sollte eigentlich keine Probleme bereiten.


Der Doc!
 
Da brauch ich nix gezipptes dranzuhängen, das, was das Beispiel oben macht, sind nur ein paar mickrige Zeilen:

Visual Basic:
Private Sub Command1_Click()
Dim i As Integer
   
    For i = 1 To 5
       ListView1.ListItems.Add (i)
       ListView2.ListItems.Add (i)
    Next i
    Label1.Caption = ListView2.ListItems.Count & " Einträge"
    
    
End Sub
Man braucht nur einen Button "command1" und eine Listview, die 2. Listview kann man ja deaktivieren.

Wäre toll, wenn Du herausfinden könntest, warum ich nix sehe.
Gruß Mac
 
Tja, die gute Nachricht ist, dass du doch keinen Besuch beim Optiker brauchst. Die schlechte ist, dass jetzt die Belehrung RTFM kommt. ;)

Die VB-Hilfe gibt zum ListView folgende Syntax an:
Objekt.Add(Index, Schlüssel, Text, Symbol, KleinesSymbol)
Du weist in deinem Code jetzt nur den Index zu aber keinen Text. Um auch was zu sehen (mal von Icons abgesehen) musst du das ganze so schreiben:
Visual Basic:
Private Sub Command1_Click()
 Dim i As Integer

 For i = 1 To 5
  ListView1.ListItems.Add i, , "Text " & i 'Man beachte die Kommas, die Syntax muss so geschrieben werden
  ListView2.ListItems.Add i, , "Text " & i 'Nachfolgende Kommas kannst du weglassen
 Next i
 Label1.Caption = ListView2.ListItems.Count & " Einträge"

End Sub


Der Doc!
 
Whow! Klasse, danke

So geht es. Das war es ja, was ich verzweifelt gesucht habe: Hinweise zur korrekten Syntax des Listview-Steuerelementes....

Ich kann die Hilfe nicht aufrufen. Obwohl installiert, will er jedes mal die Hilfe-CD haben. Und wenn ich sie ihm dann gebe, installiert er die neu und sagt dann: "Keine Hilfe installiert" :mad:

Darüber hinaus ist meine Version eine englische ('ne deutsche konnte ich mir leider net leisten). Da wäre die Hilfe sowie etwas schwieriger zu lesen bzw. zu finden.

Erfreulich ist ja, daß ich nun doch nicht zum Optiker muß... ;-)

Also vielen Dank nochmals. Wäre schön, wenn ich Dich mit Deinen stets schnellen und weiterhelfenden Antworten mal wieder bewerten könnte. Hab das schon mehrmals probiert, aber immer wieder kommt, ich soll noch etliche andere erst bewerten. Weiß leider nicht, wieviele...

Gruß Mac
 

Neue Beiträge

Zurück