Wie gestalten Sie den Nicht-Client-Bereich in einer Firemonkey FM2-Anwendung in Delphi XE3?

Ich habe diese Frage zuvor im Delphi XE2-Zeitrahmen gestellt, und die Antwort war dann eine hübschehässlicher Hack.

Jetzt unterstützt Delphi XE3 gemäß den offiziellen Versionshinweisen auch Nicht-Client-Theming. Wie macht man das in Delphi XE3 in Firemonkey FM2?

Ich glaube, es muss etwas mit dem Stilbuch zu tun haben, aber ich kann es nicht herausfinden. Das Formular selbst hat eine "EnableBorderStyling" -Eigenschaft, die ich auf "true" gesetzt habe, und ich denke, ich muss einen Stil laden, der einige nicht-Client-Themendaten enthält, aber ich kann keinen Stil finden, der ihn enthält.

Die Hilfe hat nichts zu diesem Thema.

Update2 Okay, es ist nicht kaputt, es ist nur so, dass ich keinen Stil habe, der dieses Stilelement enthält (wie RRUZ sagt).

procedure TForm1.FormShow(Sender: TObject);
begin
  StyleBook := StyleBook1;
  WindowBorder.UpdateStyle;
end;

Update3: Style-Dateien scheinen sich an zwei verschiedenen Orten zu befinden, was verwirrend ist:

  C:\Program Files (x86)\Embarcadero\RAD Studio\10.0\Redist\styles\Fmx        
  C:\Users\Public\Documents\RAD Studio\10.0\Styles

Beachten Sie, dass ich an keiner Stelle einen Luna.Style (Firemonkey-Stil) habe, jedoch 5 Sekunden mit dem Style-Editor-Werkzeug. (Öffnen und Speichern unter und ändern Sie den Typ in .Style, und ich hatte einen!)

Update4: Die Antwort von RRUZ funktioniert, aber auf meinem System (Windows 8 RTM) sehen die Nicht-Client-Stile nicht richtig aus. Sie haben weiße Ecken um die Bereiche, in denen die Farbe nicht vollständig ist. Wenn Sie die Größe des Fensters ändern, wird es ausgeblendet, und ich bin mir sicher, dass ich WM_NCREPAINT oder etwas anderes erzwingen und ausschalten kann.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage