Guten Nachmittag,
ich brauche einen kleinen Hinweis.
Es liegt bereits eine Datenbank (Base) vor. Diese möchte ich jetzt durch Makros automatisieren. Deshalb habe ich ein externes Dokument genommen und mit Makros gefüllt.
Allerdings bekomme ich es nicht hin in der Datenbank gespeicherte Bilder in ein Grafikobjekt (ImageControl) zu übertragen/anzuzeigen.
Ein bisschen Code:
verb=getverbindung ' Erstellt die Verbindung zur Datenbank
statement = verb.createStatement()
personenabfrage = statement.executeQuery("Select ""Name"", ""Foto"" from ""Personendaten""")
' Liest testweise Name (= String) und Foto (= Varbinary) in das Resultset aus.
button = dialog2.getControl("test")
' dialog2 ist der Dialog, Es gibt ein Imagecontrol Feld mit dem schönen Namen "test"
Jetzt habe ich ein wenig in der Literatur in der APi und im Internet gestöbert. Aber leider nicht die funktionierende Variante gefunden...
Meiner Meinung nach sollte es mit
button.Graphics = personenabfrage.getBytes(2)
funktionieren.
Als Meldung erscheint aber bei der Ausführung die Meldung:
Leseproblem: Eigenschaft ist schreibgeschützt.
Bisher habe ich aber nirgends eine Einstellung gefunden, um diesen Schreibschutz aufzuheben.
Kennt jemand den Befehl zum aufheben des Schreibschutz?
Ist "button.Graphics" überhaupt die richtige Zuweisung.
Alle anderen Daten und auch alle anderen Abfragen funktionieren problemlos und werden auch angezeigt.
Und ich möchte die Daten wirklich gerne in der Datenbank speichern, da ich in einer späteren (MySQL) Datenbank ebenfalls Bilder ablegen möchte, die ich mittels OO sozusagen weltweit abrufen kann.
Besten Dank im Voraus.
PS. Obwohl ich in die Datenbank nur testweise einmal ein Bild geladen hatte (und danach wieder löschte) ist das gute Stück immer noch riesengroß. Dazu gab es im Forum nur sehr alte Anmerkungen, gibt es hier einen neuen Stand in Richtung Komprimierung?
Bild aus Datenbank auslesen und in Dialog einfügen
Moderator: Moderatoren
Hey StefanOO,
ohne dein Problem im Deteil ausprobiert zu haben oder exakt deine Problematik zu analysieren, nur soviel:
Allerdings: Die Eigenschaft "Graphics" kommt mir merkwürdig vor, müsste ich aber überprüfen.
Viele Grüße
Thomas
ohne dein Problem im Deteil ausprobiert zu haben oder exakt deine Problematik zu analysieren, nur soviel:
Häufig kannst du solche Sachen nur dem Model zuweisen, nicht dem Control direkt. Es müsste also heissen:Bisher habe ich aber nirgends eine Einstellung gefunden, um diesen Schreibschutz aufzuheben.
Code: Alles auswählen
button.getModel().Graphics = personenabfrage.getBytes(2)
Viele Grüße
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic