Problem ze zmianą czcionki obiektu TButton

Problem ze zmianą czcionki obiektu TButton
nyquist
  • Rejestracja:około 15 lat
  • Ostatnio:około 11 lat
0

Witam. Proszę o pomoc, bo mam zagwozdkę w Delphi XE3 (FireMonkey)... Otóż w kodzie definiuję sobie dynamicznie obiekt:

Kopiuj
Button := TButton.Create(Panel1);
Button.Parent := Panel1;

A następnie, w dalszej części kodu próbuję zmienić czcionkę tego obiektu, wykonując:

Kopiuj
Button.Font.Size := 30;

I jest zonk, bo czcionka pozostaje bez zmian :/
Nadmieniam przy tym, że w przypadku obiektów utworzonych statycznie i ustawienia parametrów czcionki podczas projektowania formy przy pomocy Inspektora obiektów, czcionka zmienia się wzorowo.
Czy ktoś ma większe doświadczenie z tego typu problemami w FireMonkey i mógłby pomóc? Byłbym bardzo zobowiązany.

edytowany 1x, ostatnio: nyquist
_13th_Dragon
  • Rejestracja:ponad 19 lat
  • Ostatnio:około 23 godziny
0

Użyj TBitBtn.
Tbutton nie reaguje na zmianę czcionki nawet jak robisz to w inspektorze.


Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.
nyquist
  • Rejestracja:około 15 lat
  • Ostatnio:około 11 lat
0
_13th_Dragon napisał(a):

Użyj TBitBtn.
Tbutton nie reaguje na zmianę czcionki nawet jak robisz to w inspektorze.

Otóż błąd :p Coś takiego by chyba nie przeszło... Przynajmniej ja żądałbym zwrotu kasy za niepełnosprawne środowisko ;)
Wszystko jest ok, już sam doszedłem w czym tkwi problem. Komponenty obsługiwane przez FireMonkey (m. in. także TButton) posiadają pewną właściwość o nazwie StyledSettings, przy pomocy której można określić za które parametry czcionki odpowiedzialny będzie wybrany styl FireMonkey, a które będą ustawiane we właściwości Font komponentu.
Problem uważam za rozwiązany. Pozdrawiam.

Opi
  • Rejestracja:ponad 20 lat
  • Ostatnio:3 dni
  • Postów:1030
0

Pewnie dziedziczysz rozmiar po Panel1. Zastosuj takie rozwiązanie.

Kopiuj
Button := TButton.Create(Panel1);
Button.Parent := Panel1;
Button.ParentFont := False;
Button.Font.Size := 30;
nyquist
  • Rejestracja:około 15 lat
  • Ostatnio:około 11 lat
0
Opi napisał(a):

Pewnie dziedziczysz rozmiar po Panel1. Zastosuj takie rozwiązanie.

Kopiuj
Button := TButton.Create(Panel1);
Button.Parent := Panel1;
Button.ParentFont := False;
Button.Font.Size := 30;

Doceniam chęć pomocy, ale po pierwsze - kontrolki w wersji FireMonkey nie posiadają właściwości "ParentFont", a po drugie - jak napisałem wcześniej, przecież znalazłem już rozwiązanie problemu :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.