Einzelnen Beitrag anzeigen

Sunec

Registriert seit: 31. Aug 2013
88 Beiträge
 
Delphi XE8 Architect
 
#3

AW: Firemonkey Schriftgröße 12 unter OSX

  Alt 20. Nov 2014, 17:28
Hallo Daniel,

ja die StyledSettings gibt es schon.


Habe einen kleinen Testscreen gemacht in dem ich verschiedene Labels platziert habe.

In das Text property der Labels habe ich die Schriftgröße hineingeschrieben.

Anschließend folgende Procedure ausgeführt:

Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var
  i: integer;
begin
  for i := 0 to ComponentCount - 1 do
    if Components[i] is TLabel then
      TLabel(Components[i]).Text := TLabel(Components[i]).Text + ' ' + FloatToStr(TLabel(Components[i]).TextSettings.Font.Size)
end;
Ergebnis in Bild 1.

Außerdem ist mir aufgefallen, dass Schriftgröße 12 automatisch in (Default) umbenannt wird (Bild 2).

Es freut mich aber, dass es in XE7 anscheinend geht. Ich werde mir mal die Demo von XE7 hierrunterladen und testen.

EDIT:

Habe noch ein Screen unter Windows angehängt. Gleicher Code - gleiches Programm.

Danke.


Edit:

Workaround für XE6 User:

Delphi-Quellcode:
procedure TForm1.OnPaint(Sender: TObject);
var
  Settings: ITextSettings;
  Instance: TComponent;
  i: integer;
begin

  for i := 0 to ComponentCount - 1 do
  begin
    Instance := Components[i];

    if IInterface(Instance).QueryInterface(ITextSettings, Settings) = S_OK then
    begin
      Settings.TextSettings.BeginUpdate;
      try
        Settings.DefaultTextSettings.Font.Size := 12;

      finally
        Settings.TextSettings.EndUpdate;
      end;
    end;
  end;
end;
Miniaturansicht angehängter Grafiken
s12.jpg   groessen.jpg   win.jpg  

Geändert von Sunec (20. Nov 2014 um 18:21 Uhr)
  Mit Zitat antworten Zitat