Einzelnen Beitrag anzeigen

Dabei-seit-Turbo-Pascal-2

Registriert seit: 19. Feb 2010
26 Beiträge
 
Delphi 11 Alexandria
 
#1

tabitem.text zur Laufzeit ändern (FMX, Android)

  Alt 26. Apr 2017, 01:46
Ich weise zur Laufzeit einem Tabitem.text einen neuen Wert (String) zu. Dieser wird aber nicht angezeigt. Sichtbar bleibt weiterhin der alte Text.

Ich verwende Delphi 10.2 Tokyo, Firemonkey und compiliere für Android.

Diverse Versuche mit Tabitem.Repaint, TabControl.Repaint und .beginupdate / .endupdate waren erfolglos.

Ein Tabitem.visible :=false / :=true vor / nach der Zuweisung an Tabitem.text haben zur Anzeige des neu zugewiesenen Textes geführt, aber alle anderen Controls des Tabitems waren danach nicht mehr sichtbar.

Wechsele ich auf ein anderes Tabitem, ändert sich die Beschriftung des dann inaktiven Tabitems auf den neu zugewiesenen Wert. Wechsele ich wieder zurück, erscheint bei dem dann wieder aktiven Tabitem auch wieder die alte Beschriftung.

Es scheint, als verwende Delphi hier zwei Texte: Den Text für ein inaktives Tabitem ändere ich mit der Zuweisung an Tabitem.text, der Text, der bei aktivem Tabitem angezeigt wird, bleibt von der Zuweisung zur Laufzeit unberührt.

Ob die Zuweisung an Tabitem.text erfolgt, während das Tabitem das TabControl.ActiveTab ist oder nicht, macht keinen Unterschied.

Getestet habe ich mit einem LG-Mobiltelefon mit Android 5.0.2.
  Mit Zitat antworten Zitat