2 Stimmen

Bild wird nicht im Bildsteuerelement angezeigt

Ich habe einen Bericht in MS Access mit 4 Bildsteuerelementen. Im Formatereignis des Detailbereichs habe ich Code, der die Bildereigenschaft basierend auf den Werten der Felder im DAO.recordset festlegt. Hier ist ein Beispiel für meinen Code.

Für i = 0 bis 3
    Wenn nicht rs.EOF Dann
        Me.Controls("img" & i).Picture = blobGet(rs!phBlobId)
        rs.MoveNext
    Sonst
        Me.Controls("img" & i).Picture = ""
    End If
Nächstes i

Grundsätzlich handelt es sich bei dem Feld rs!phBlobId um einen Dateinamen. Die Funktion blobGet gibt den vollständigen Pfad zum Bild zurück, der dann die Bildereigenschaft des richtigen Steuerelements im Detailbereich meines Berichts festlegt.

Ich bin mir nicht sicher, was alle Ursachen sind, aber unter bestimmten Umständen werden die Bilder nicht in den Steuerelementen angezeigt. Ich habe ein ähnliches Setup auf einem Formular und habe dort überhaupt keine Probleme, ich habe nur das Problem, wenn es sich um einen Bericht handelt.

Eine mögliche Ursache könnte die Größe des Bildes sein. Wenn ich ein großes Bild einfüge (zum Beispiel über 5 MB), wird es manchmal nicht angezeigt. Mit verschiedenen Kombinationen von Bildern werden unterschiedliche angezeigt.

Ich bin offen für Lösungen für mein oben beschriebenes Problem oder für alternative Ideen, wie diese Bilder im Bericht angezeigt werden können. Eine absolute Anforderung ist, dass die Bilder mit VBA festgelegt werden, da sich die genaue Anordnung der Bilder je nach einer nicht verwandten Variablen ändert.

0 Stimmen

Ich finde es sehr, sehr seltsam, Dinge aus einem Datensatz in einem Detailereignis eines Berichts nachzuschlagen. Ich würde tendieren, die Daten einfach in die Recordsource meines Berichts zu legen. Wenn es sich um eine nicht verwandte Tabelle handelt, spielt es keine Rolle - fügen Sie sie ohne Verknüpfung in die Recordsource ein und fügen Sie die Felder, die Sie benötigen, in die Recordsource ein, und sie werden immer für Sie verfügbar sein.

0 Stimmen

Ich stimme zu, es ist sehr seltsam! Der Grund, warum ich das mache, ist das Layout der Bildsteuerelemente sehr spezifisch ist und sie überlappen sowohl vertikal als auch horizontal. Was ich versuche zu erreichen, ist ehrlich gesagt, Access fast schon in ein Desktop-Publishing-Programm zu verwandeln. Ich würde niemandem empfehlen, es zu versuchen, es macht keinen Spaß. ;)

0 Stimmen

Manchmal hilft es, den virtuellen Speicher von Windows zu erhöhen, wenn Access-Berichte keine Bilder anzeigen.

2voto

Icode4food Punkte 8236

Die Lösung, die ich gefunden habe, war einfach, die Bilder mit imageMagick neu zu skalieren. Dies bietet mir tatsächlich einige Vorteile. Nicht zuletzt eine deutliche Leistungssteigerung, da ich mit kleineren Bildern arbeite.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X