German Pane Hintergrundfarbe in B4J

umsid

Member
Licensed User
Longtime User
Hallo Leute,

ich hänge an dem Problem, die Hintergrundfarbe eines Pane Objekts zu setzen:

folgender Hintergrund:
Ich fülle ein CustomViewList mit folgenden Zeilen:

B4X:
For Each colroot As Map In root
                
                '..........unwichtiger Code
                            Dim pnZeile As Pane
                            pnZeile.Initialize("pnZeile")
                            pnZeile.LoadLayout("cvImportMatch")
                            pnZeile.SetSize(clvMatchImport.AsView.Width, 50dip)
                            If (i Mod 2)=1 Then
                               pnZeile.Style="-fx-background-color: #90BFD4;"
                               lbMatchDatum.Style="-fx-background-color: #90BFD4"
                            Else
                               pnZeile.Style="-fx-background-color:" & fx.Colors.DarkGray
                               lbMatchDatum.Style="-fx-background-color: grey"
                            End If
                            lbMatchName.Text=name
                            lbKindOfMatch.Text=KindOfMatchText
                            lbMatchDatum.Text=date
                            pnZeile.Tag=id
                                                     
                clvMatchImport.Add(pnZeile, pnZeile.Tag)
                i=i+1
            Next

eigentlich sollte mit pnZeile.Style die Hintergrundfarbe des neu erzeugten Pane verändert werden können.
Das Lustige ist, dass es mit dem lbMatchDatum.Style funktioniert.
Ich habe einen Screenshot des Fensters beigefügt.

Kann jemand erahnen, wo der Fehler liegt?

vg
Guenter
 

Attachments

  • screenshot.jpg
    screenshot.jpg
    26.3 KB · Views: 373

umsid

Member
Licensed User
Longtime User
könnte sein - und jetzt???? Hast auch den Befehl für mich um das alpha umzusetzen?
 

klaus

Expert
Licensed User
Longtime User
Mit der CSSUtils Library:
CSSUtils.SetBackgroundColor(pnZeile, fx.Colors.ARGB(255, 255, 235, 205))
Die 3 letzten Werte musst Du anpassen.

Oder mit
pnZeile.Style="-fx-text-fill: rgba(255,235,205,1)"
Hier musst Du die 3 ersten Werte anpassen.
Achtung, in diesem Fall ist der Alpha-Wert zwischen 0 und 1.

EDIT:
Das zeite Beispiel ist falsch. Muss so aussehen:
CSSUtils.SetStyleProperty(pnZeile, "-fx-background-color", "rgba(255, 235, 205, 1)")
und ist länger als des Erste.
 
Last edited:

umsid

Member
Licensed User
Longtime User
Hallo Klaus,
vielen Dank für die Hilfe.
Die erste Variante mit den CSSUtlis funktioniert, die zweite Variante funktioniert nicht :-(
Auch wenn man das "-fx-text-fill" durch "-fx-backgournd-color" ersetzt - beide varianten habe ich getestet.

Kannst Du mir evtl. sagen, wo man die "CSSUtil" Events und Members nachlesen kann?
Die Online Hilfe für diese Lib ist leer :-(

vg aus Deutschland
Guenter
 

DonManfred

Expert
Licensed User
Longtime User

klaus

Expert
Licensed User
Longtime User
Das zweite Beispiel hätte so aussehen müssen:
CSSUtils.SetStyleProperty(pnZeile, "-fx-background-color", "rgba(255, 235, 205, 1)")
anstatt:
pnZeile.Style="-fx-text-fill: rgba(255,235,205,1)"

Habs im B4J Beginner's Guide nachgesucht.
 
Top