Hallo liebe Leute,
ich habe ein Formular in dem ich nach Daten suche (Access 2010). Die Daten sollen in einem Listview angezeigt werden. Mit normalen Daten kein Problem. Aber in einem Feld des Recordsets ist ein Bild. Nicht ein Pfad auf ein Bild sondern das Bild selbst. Das möchte ich im ListView auch darstellen. Das funktioniert so erstmal nicht. Datentypen unverträglich. Ich habe geforscht. Ein ImageList Objekt ist anscheinend erforderlich. Also habe ich ein ImageList Objekt auf das Formular gezogen. Aber wie nun weiter? Offenbar muss das Bild zunächst in die ImageList gebracht werden und dann muss sich das ListView aus der Imagelist bedienen. Ich habe mir schon einen Wolf gegoogelt. Dieses simple Szenario war nicht zu finden.
Hier der Codeschnipsel
Set ds = db.OpenRecordset(strSQL, dbOpenDynaset, dbSeeChanges)
If Not (ds.EOF And ds.BOF) Then
ds.MoveFirst
Do Until ds.EOF = True
Set itmX = Forms.Formular1.MyTestView.ListItems.Add()
itmX.Text = ds!Artikel
itmX.SubItems(1) = ds!ArtikelNr
itmX.SubItems(2) = ds!Artikelbild
ds.MoveNext
Loop
End If
Die itmX.SubItems(2) = ds!Artikelbild Anweisung funktioniert so nicht. :'( Da muss wohl eine Zuweisung zur ImageList erfolgen. Und dann muss mein Subitem2 sich das Bild aus der ImageList holen bzw. es muss eine weitere Zuweisung erfolgen. Weiß jemand wie das geht?
Oder geht das ganz anders? Muss ich alle Bilder in einen Bilderpool stellen und in meiner Tabelle nicht das Bild sondern einen Verweis auf das Objekt im Bilderpool hinterlegen? Falls es so sein sollte - wie geht das?
Und die zweite Frage. Wenn ich nach einem anderen Artikel oder einer Artikelgruppe suche lösche ich den Inhalt des Listviews vorher. Ist damit auch automatisch der Inhalt der ImageList gelöscht? oder muss ich das extra machen. Falls ja - wie?
Ich habe im Moment keine Entwicklungsumgebung zur Verfügung. Da sind die ActiveX Elemente ja etwas besser dokumentiert. In Access ist es damit leider nichts. Und die Beispiele die ich ergoogelt habe waren alle irgendwie anders. da waren die Bilder außerhalb der DB und offenbar wurde in den Listviews immer das Gleiche angezeigt.
Ich wäre sehr dankbar wenn jemand sachdienliche Hinweise für mich hätte. Ja - und falls an anderer Stelle noch was gemacht werden muss - also an den Objekten selbst bitte dazusagen. Falls am Listview Objekt irgendeine Einstellung verändert werden muss, damit es funktioniert. Oder so.
LG
Leo
Hallo,
Google einfach mal... da gibt es massenhaft Beispiele.
Danke für den Hinweis.
Nur, dass diese Beispiele leider alle anders sind und mir nichts nützen. Wenn es zu finden wäre, wäre ich nicht hier und würde nicht um Hinweise bitten.
Ich wollte im Übrigen meine Frage gerade noch ergänzen. Das Bild ist in einer Anlage hinterlegt. Ich kann den Dateinamen aus der Anlage auslesen - aber ich habe keinen Pfad. Wie bekomme ich a) das Bild aus dem Attachement in das ImageList und b) aus der ImageList in das ListView?
LG
Leo