我在寫一個需要看起來像舊式終端會話的備忘錄組件。這應該非常簡單,但FireMonkey樣式的工作方式看起來令人難以置信地變得複雜。在FireMonkey中更改TMemo的字體和背景顏色
在非移動FireMonkey應用程序中,我可以右鍵單擊控件並選擇「編輯自定義樣式」。此選項在移動應用中不可用。這是由FireMonkey開發人員提供的原因。
它支持iOS和Android上的不同風格。我們無法在iOS風格的Android上運行 應用程序。但是當您嘗試更改 平臺樣式時,我們會自動在每個目標平臺上使用它。 如果你想改變默認的fm控制風格,你應該把 放在窗體樣式書中,並在其中創建樣式,或者加載到樣式簿 平臺風格並對其進行更改。
也是非常重要的,當你在風格本書加載平臺的風格,你可以 想要的應用程序實例將不會有平臺 風格證明二份(一個 - 系統FMX包和其他副本,你的風格的書)。 爲此,您應該在TStylebook.UseStyleManager中設置標誌爲true。在 Style書中的這種風格將取代平臺風格。
好的,所以我想我需要創建一個自定義樣式。我如何去創建自定義樣式來覆蓋字體和背景屬性?
我想我可以重寫ApplyStyle過程就像這樣。
procedure TMyMemo.ApplyStyle;
var
BackgroundObject: TFmxObject;
begin
inherited;
BackgroundObject := FindStyleResource('content');
if Assigned(BackgroundObject) then
begin
// Change the background color of the background
end;
end;
如何知道背景對象是什麼類型以及需要更改哪個屬性?
當然,改變控件的背景顏色並不是那麼困難!我是否錯過了FM風格的基礎知識?