SVG-Symbole in der Farbe des Formulars anzeigen
Zeigen Sie ein einfarbiges Symbol aus einem SVG-Symbolsatz in einem Formular an, in jeder Größe scharf und in der Textfarbe des Formulars, und wechseln Sie es je Datensatz.
Voraussetzungen: WKL Forms Object Library 1.52 oder höher.
Lösungsüberblick
- Ein
WklImage-Steuerelement zeichnet die SVG-Datei über Direct2D;SizeMode = wimZoombehält das Seitenverhältnis bei. - Symbolsätze zeichnen mit
currentColor;SvgColorgibt dieser Farbe die Farbe des Formulars. - An ein Feld mit dem Dateinamen gebunden, folgt das Symbol dem aktuellen Datensatz.
Umsetzung
Legen Sie die Symbole in einem Ordner symbole neben der Datenbank ab, fügen Sie ein WKL-Image-Steuerelement
imgSymbol ein, und setzen Sie seinen Steuerelementinhalt auf ein Feld Symbol, das den Dateinamen enthält
(symbole\lager.svg):
Private Sub Form_Load()
With Me!imgSymbol.Object
.SizeMode = wimZoom
.SvgColor = Me!lblTitel.ForeColor ' the color of the form's title
.Source = "symbole\leer.svg" ' shown when the field is Null
End With
End Sub
Private Sub Form_Current()
If Len(Me!imgSymbol.Object.ErrorText) > 0 Then Debug.Print Me!imgSymbol.Object.ErrorText
End Sub
Hinweise
- Relative Pfade beginnen im Ordner der Datenbank (
CurrentProject.Path), sodass der Ordner mit der Datenbank umziehen kann. - Ein SVG mit eigenen Farben ignoriert
SvgColor; ersetzt wird nurcurrentColor. - Direct2D zeichnet keinen SVG-Text und keine Filtereffekte. Wandeln Sie Text im Zeichenprogramm in Pfade um.
- Eine fehlende Datei zeigt ihren Pfad im Steuerelement und in
ErrorTextan; das Formular hält nicht an.
Verwandte Themen
de/wiki/msaccess/comctl/how-to/show-svg-symbols-in-the-colour-of-the-form.txt · Zuletzt geändert: von Wolfgang van der Stille