AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Firemonky TListBox Backgroundfarbe

Ein Thema von Anila · begonnen am 4. Nov 2019 · letzter Beitrag vom 18. Nov 2019
Antwort Antwort
Anila

Registriert seit: 15. Okt 2019
20 Beiträge
 
#1

AW: Firemonky TListBox Backgroundfarbe

  Alt 5. Nov 2019, 10:00
Hallo Harry,

das Verrückte ist: Genauso habe ich es gemacht. Ich versuche heute Abend, wenn ich Freizeit habe, ein Bild einzustellen, jetzt muss ich ganz normal arbeiten.

Als Style habe ich der Listbox ListBox1Style1 zugewiesen, genau, wie es bei dir auch heißt. Sieht bei mir dann auch auf dem normalen Bildschirm in Windows genauso aus, wie ich es haben will. Ich hatte es auch tatsächlich mal mit quietschegrün probiert, um wenigstens irgendeinen Effekt zu haben.

Bei mir war auch der RectAngle an der gleichen Stelle wie bei dir: Unterhalb von Background-Content.

Aber schon in der Android-Vorschau sieht man bei mir, dass es in Android keinen Effekt gibt. Für den ListItemStyle habe ich einen mit "node" im Namen (komme jetzt an die IDE nicht dran.) Das war jedenfalls der einzige der verfügbaren Styles, wo ich ein Bild anzeigen konnte und nebendran den Text des Items. Es war jedenfalls nicht LeftDetailLookup (oder so), da waren bei mir die Grafiken nämlich nicht mehr sichtbar. Auch das galt nur für Android, Windows hat sie angezeigt.

Bist du zusätzlich noch in der Lage, bei deiner Listbox ein Image links neben dem Itemtext anzuzeigen und trotzdem den Hintergrund zu verändern?? Falls ja, hast du irgendeine Idee, was bei mir schiefgelaufen sein könnte? IDE deinstallieren und neu installieren?? Oder ob ich irgendeine Property (die vom ListItemStyle oder sonstwas) gesetzt haben könnte, die damit in kompatibel ist? Hast du auch oft die Probleme, dass in der Windows-Plattform alles richtig angezeigt wird und derselbe Code sich in der Android-Plattform anders verhält? Ich benutze üblicherweise den Debugger, starte also per Debugger auf dem am Rechner angeschlossenen Samsung Handy.

Viele Grüße
Anila
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.091 Beiträge
 
Delphi 12 Athens
 
#2

AW: Firemonky TListBox Backgroundfarbe

  Alt 5. Nov 2019, 18:54
Nur um es auszuschließen: seit Rio gibt's für FireMonkey auch unter Android die Möglichkeit
Plattform native Controls zu benutzen (keine Ahnung ob das für eine Listbox schon geht),
dann dürden die Styles nicht greifen. Da gibt's irgend eine Eigenschaft im Control dafür.
Namen hab' ich aber vergessen...
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.561 Beiträge
 
Delphi 12 Athens
 
#3

AW: Firemonky TListBox Backgroundfarbe

  Alt 6. Nov 2019, 00:08

Bist du zusätzlich noch in der Lage, bei deiner Listbox ein Image links neben dem Itemtext anzuzeigen und trotzdem den Hintergrund zu verändern?? Falls ja, hast du irgendeine Idee, was bei mir schiefgelaufen sein könnte? IDE deinstallieren und neu installieren?? Oder ob ich irgendeine Property (die vom ListItemStyle oder sonstwas) gesetzt haben könnte, die damit in kompatibel ist? Hast du auch oft die Probleme, dass in der Windows-Plattform alles richtig angezeigt wird und derselbe Code sich in der Android-Plattform anders verhält? Ich benutze üblicherweise den Debugger, starte also per Debugger auf dem am Rechner angeschlossenen Samsung Handy.

Viele Grüße
Anila
Das ListboxItem kann ja mit einer Grafik aus einer Imagelist verknpüft werden. Und ja, sie wird angezeigt, siehe anlg. Screenshot zur Laufzeit.

Ich habe das jetzt nur unter Windows getestet. Unter Android und wenn Du einen geladenen STyle verwendest, kann das evtl. anders sein.

Was aber eigentlich immer gehen sollte, dass Du eine weiteres Stylebook auf Deine Form nimmst, wo Du nur Deinen Extra-Style für die Listbox (am besten unter einem leicht abweichenden Namen vom Standard für den StyleNamen) drin hast. Dann wird der allgemeine Style für Android genommen, aber für die Listbox Dein angepasster (auch wenn Dein Extra-Stylebook nicht dem Formular als Stylebook zugewiesen ist, darf auch nicht in diesem Falle).

Wenn das nicht funktionieren sollte: Was auf jeden Fall immer geht, ist den Hintergrund bzw. den Inhalt der Listbox selber zu zeichnen, dafür verwendest Du das Onpainting-Event des Listbox-Items (also nicht der Listbox). Falls Du mein FMX-Buch hast, unter Tipp-R15 ist das mal mit Code und Screenshots beschrieben...
Angehängte Grafiken
Dateityp: jpg LBBack.jpg (19,6 KB, 21x aufgerufen)

Geändert von Harry Stahl ( 6. Nov 2019 um 00:12 Uhr)
  Mit Zitat antworten Zitat
Anila

Registriert seit: 15. Okt 2019
20 Beiträge
 
#4

AW: Firemonky TListBox Backgroundfarbe

  Alt 6. Nov 2019, 00:36
Hallo,

@Harry: Ich hab's mir gerade über Amazon bestellt und hoffe, dass es mich weiter bringt.

Die Antwort von Turbomagic habe ich nicht wirklich verstanden, aber ich habe jetzt herausgefunden, dass zumindest die Transparenzeigenschaft mit dem ListItemStyle zu tun hat.

Wenn ich bei DefaultItemstyle - Itemstyle - nichts auswähle, dann funktioniert die Transparenz! Dann schaffe ich es auch, der Listbox eine andere Hintergrundfarbe zu geben.

Nun möchte ich aber mein Item mit Bild anzeigen und wähle deswegen DefaultItemstyle - Itemstyle=listboxitemnodetail.
Dann funktioniert die Transparenz nicht mehr, dann hat das Item stets einen weißen Hintergrund.

Dann muss ich vermutlich diesen ItemStyle bearbeiten?

...Ich habe jetzt etwas herum probiert und sehe zumindest Veränderungen. Dieser StyleDesigner erschließt sich mir noch nicht so ganz, aber wenigstens sehe ich Veränderungen, das ist ja mal ein Start. Jetzt habe ich mir eine pottenhäßliche Listbox gezimmert, grüner Hintergrund, rote Schrift, und das ist DAS Erfolgserlebnis von heute

Harry, ich hoffe dann, dass auch der Style-Designer in deinem Buch sozusagen für Dummies gut erklärt ist?
Na gut, ich sehe wieder etwas Land... auch, wenn es noch weit weg ist.

Auf jeden Fall ist das von Harry angehängte Bild das, was ich haben will (wenn auch nicht gerade in quietschegrün, aber ne andere Farbe werde ich wohl auch alleine schaffen)

Viele Grüße
Anila

Geändert von Anila ( 6. Nov 2019 um 00:39 Uhr)
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.091 Beiträge
 
Delphi 12 Athens
 
#5

AW: Firemonky TListBox Backgroundfarbe

  Alt 6. Nov 2019, 18:47
Noch etwas Erklärung zu meiner Antwort:
Es gibt seit Rio die Möglichkeit auszuwählen ob
ein Firemonkey Steuerelement (z. B. TEdit) komplett
von Firemonkey gerendert wird. Dann gilt alles was es zu Styles
in FMX zu sagen gibt oder ob das TEdit aus diesem Beispiel
direkt vom Android Betriebssystem bereit gestellt wird.
Dann zeichnet Android das TEdit und der Stilmechanismus von FMX
greift nicht.

Außer dem Zeichnen sind dann natürlich auch einige andere Features
betroffen. Manchmal stellt das OS Funktionalität bereit, die FMX
nicht bietet, manchmal ist es aber auch genau anders herum.

Grüße

TurboMagic
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.561 Beiträge
 
Delphi 12 Athens
 
#6

AW: Firemonky TListBox Backgroundfarbe

  Alt 6. Nov 2019, 20:25
Harry, ich hoffe dann, dass auch der Style-Designer in deinem Buch sozusagen für Dummies gut erklärt ist?
Na gut, ich sehe wieder etwas Land... auch, wenn es noch weit weg ist.
Ich hoffe Dir hilft da die Beschreibung in Kapitel II, Abschnit 5 zum Stildesigner und den Styles.

Vielleicht noch ein weiterer Hinweis: Weiß ja nicht, wie Dein Projekt genau aussieht, ob es z.B. nur für Android / IOS sein soll oder eine Form ist, die Du auch unter Windows verwenden möchtest.

Man hat auch noch die Möglichkeit für jede Plattform pro Style-Datei ein Style-Element zu modifizieren, ich habe heute in diesem kurzen Video auf eine ähnliche Frage (https://www.delphipraxis.net/1450835-post1.html) mal gezeigt:
https://youtu.be/n9KBc72eH4s

Evtl. ist das Dir ja auch noch eine Hilfe
  Mit Zitat antworten Zitat
Anila

Registriert seit: 15. Okt 2019
20 Beiträge
 
#7

AW: Firemonky TListBox Backgroundfarbe

  Alt 7. Nov 2019, 00:50
Hallo,

vielen Dank schon mal. Android mache ich nur in meiner Freizeit und heute bin ich dazu nicht gekommen. Ich melde mich auf jeden Fall, wenn ich wieder Zeit für Android habe.

Viele Grüße
Anila
  Mit Zitat antworten Zitat
Anila

Registriert seit: 15. Okt 2019
20 Beiträge
 
#8

AW: Firemonky TListBox Backgroundfarbe

  Alt 7. Nov 2019, 01:26
Hallo Turbomagic,

Zitat:
Noch etwas Erklärung zu meiner Antwort:
Es gibt seit Rio die Möglichkeit auszuwählen ob
ein Firemonkey Steuerelement (z. B. TEdit) komplett
von Firemonkey gerendert wird.
Du hattest ja gesagt, dass es dafür eine Property geben würde. Ich vermute, dass es neu mit Rio reingekommen ist, bei Tokyo finde ich keine Property, die irgendwas mit Rendern oder so zu tun hat.

Viele Grüße
Anila
  Mit Zitat antworten Zitat
Anila

Registriert seit: 15. Okt 2019
20 Beiträge
 
#9

AW: Firemonky TListBox Backgroundfarbe

  Alt 17. Nov 2019, 23:48
Hallo,

das Buch finde ich ganz hilfreich, stehe heute allerdings vor dem nächsten Problem:

inzwischen habe ich es geschafft, eine Listbox auf die Form zu setzen, wo ich zu jedem Item ein Image + Text anzeige und ich habe auch die Hintergrundfarbe des Items verändert. Sieht also genauso aus, wie ich es haben wollte, funktioniert auch auf Windows genauso - bei Anroid wird allerdings das OnClick-Event nicht ausgelöst.

Wenn ich den LookupStyle vom ListItem wieder auf einen Default-Style setze, funktioniert es.
Es liegt also offenbar am Custom-Style und offenbar reagiert Android anders als Windows.

Folgendes habe ich gemacht:
Bei ListBoxItem1Style1 habe ich ein RectAngle eingefügt. Es ist parent für Icon + Area. (Area ist nach wie vor Parent von Text).

Warum klappt das nicht bei Android? Warum bei Windows??


Viele Grüße
Anila
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.222 Beiträge
 
Delphi 12 Athens
 
#10

AW: Firemonky TListBox Backgroundfarbe

  Alt 18. Nov 2019, 07:53
Wenn Du Elemente einfügst und auf die ListBoxItems legts, wie TRectangle oder TText, dann drauf achten das deren HitTest := False; ist, wenn Du diese nicht anclicken möchtest.
Sonst clickst Du eventuell auf etwas was Du nicht möchtest.
Du hast leider keinen Code geschickt, deshalb ist das nur Raten ...
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz