如何在delphi xe5 Firemonkey中更改标签的字体

时间:2014-08-27 07:57:10

标签: android delphi firemonkey

我有一个程序,旨在准备一个带有几个标签和下拉列表的表格。但我不能改变标签的字体颜色。有人可以帮忙吗?

我找到了一个链接,说他们找到了答案,但我无法理解它。 How to programmatically alter Font properties in Firemonkey controls

以下是尝试执行更改的单位的代码。

unit procedures;

interface

Uses
  System.SysUtils, System.Types, System.UITypes, System.Classes,
  System.Variants, fmx.controls;

Procedure resetproductlists;

implementation

uses main_unit, datalive_unit, AddUniqueItemToComboBox;

Procedure resetproductlists;
begin
  With Datalive.products Do
  Begin
    Try
      active := False;
      params.clear;
      sql.text := 'select supplier,item,width,height from products';
      active := True;
      Main.Combobox1.clear;
      Main.Combobox2.clear;
      Main.Combobox3.clear;
      Main.Combobox4.clear;
      Main.Edit1.text := '';
      Main.Edit2.text := '';
      Main.SpinBox1.Value := 0;
      Main.label13.text := 'n/a';
      Main.label13.StyledSettings := Main.label13.StyledSettings -
        [TStyledSetting.ssFontColor];
      Main.label13.FontColor := TAlphaColors.Aqua;
      Main.label14.text := 'R 0.00';
      Main.label14.FontColor := clBlack;
      while not eof do
      Begin
        try
          addtocombo(Main.Combobox1, Fieldbyname('supplier').Asstring);
          addtocombo(Main.Combobox2, Fieldbyname('item').Asstring);
          addtocombo(Main.Combobox3, Fieldbyname('width').Asstring);
          addtocombo(Main.Combobox4, Fieldbyname('height').Asstring);
        finally
          next;
        end;
      End;
    Finally
      active := False;
    End;
  End;
end;

end.

addtocombo程序仅将文本插入组合框(如果尚未在组合框中找到)。

任何帮助都会很棒。谢谢

1 个答案:

答案 0 :(得分:1)

以下两行改变了XE5中标签的字体颜色:

  Label13.StyledSettings := Label13.StyledSettings - [TStyledSetting.FontColor];
  Label13.TextSettings.FontColor := TAlphaColors.Aqua;

但是你已经有了那些代码。所以问题是为什么它在你的情况下不起作用。我说你的代码没有执行或者某些东西将颜色变回黑色。尝试在FFontColor := Value;的TTextSettings.SetFontColor中设置条件断点,该条件断点仅在将颜色更改为Aqua或从Aqua更改颜色时触发。这可能会给你一个线索。