Anbei einmal ein komplettes Sample. Einfach neue Anwendung und diesen Code einfügen:
Delphi-Quellcode:
implementation uses FMX.Layouts, FMX.StdCtrls, FMX.Styles;
{$R *.fmx}
procedure TForm1.FormCreate(Sender: TObject);
var
newLayout: TScaledLayout;
paddingRect: TRectF;
newButton: TTextControl;
begin
ClientWidth := 80; ClientHeight := 60;
newLayout := TScaledLayout.Create(self);
newLayout.Parent := self;
newLayout.Size.Size := TSizeF.Create(ClientWidth, ClientHeight);
newLayout.OriginalWidth := ClientWidth;
newLayout.OriginalHeight := ClientHeight;
newLayout.Align := TAlignLayout.Fit;
paddingRect := newLayout.Margins.Rect;
paddingRect.Offset(6, 6);
newLayout.Margins.Rect := paddingRect;
newButton := TButton.Create(self);
newButton.Parent := newLayout;
newButton.Align := TAlignLayout.Client;
newButton.Text := 'FMX';
newButton.OnClick := handleButtonClick;
end;
procedure TForm1.handleButtonClick(Sender: TObject);
var
openDialog: TOpenDialog;
begin
openDialog := TOpenDialog.Create(nil);
try
if openDialog.Execute() then
TStyleManager.SetStyleFromFile(openDialog.FileName);
finally
openDialog.Destroy();
end;
end;
Wenn man auf den Button drückt kann man eine FMX-Style-Datei einladen und anwenden. Das zeigt wohl: FMX an sich macht alles richtig, es sind wohl die Styles selber. Oder irgendetwas darin.
Anbei zwei Bilder: Sie zeigen einfach nur zwei unterschiedliche Styles. Der erste sieht in jeder Lebenslage traumhaft aus (!), beim zweiten sieht man leider überdeutlich diese komischen Linien.