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;