AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

VCL Styles : ignoriert Schiftart

Ein Thema von creehawk · begonnen am 13. Sep 2019 · letzter Beitrag vom 20. Sep 2019
Antwort Antwort
Seite 1 von 2  1 2      
creehawk

Registriert seit: 1. Jul 2013
Ort: Hamburg
233 Beiträge
 
Delphi 10.4 Sydney
 
#1

VCL Styles : ignoriert Schiftart

  Alt 13. Sep 2019, 09:32
Moin.

Ein neue VCL Anwendung.
Projekt>Optionen>Erscheinungsbild>Sky
Feuer frei. Alles okay.
Tools>Bitmap-Stil-Designer
Laden :.....Embarcadero.../Redist/vcl/Sky.vsf
per Menü: Stil > Schriftname zuweisen > SegoeUI 9 Punkte
mal unter Fonts nachsehen: alles paletti, die Beispielbuttons werden mit der neuen Schriftart angezeigt.
Im Inspektor Name ändern auf Style
Speichern unter: Style.vsf
F9 drücken. Shit.
Keine Änderung zu erkennen. Hm. Einfach Mal für Fonts>MenuItemTextNormal die Schriftfarbe ändern von Schwarz nach Grün.
Speichern.
F9 Drücken. Fast Okay, hübsches Grün, falsche Schriftart.

Was ist verkehrt? Oder zeigt das Beispiel im Bitmap-Stil-Designer die neue Schriftart nicht an?

creehawk

P.S. Diesen Style habe ich in eine andere VCL Anwendung eingebunden (Quelltext : TStyleManager.SetStyle(TStyleManager.LoadFromFile( 'Style.vsf')), die geänderte Farbe wird richtig ausgegeben, NICHT jedoch die Schriftart.
  Mit Zitat antworten Zitat
creehawk

Registriert seit: 1. Jul 2013
Ort: Hamburg
233 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: VCL Styles : ignoriert Schiftart

  Alt 16. Sep 2019, 09:24
Moin.

Mittlerweile habe ich ohne Ende rumgegoogelt und letztlich nichts dazu gefunden. Oder nur seitenlange Programme um das irgendwie möglich zu machen. Und ergänzend dazu nur noch die Info das die Dialogboxen die eventuell benutzt werden sowieso nicht den Style benutzen. Warum und wieso wird auch erklärt, ist ja auch schön und gut. Und ein wirklich Handfestes Tutorial für die Verwendung von VCL Styles finde ich auch nicht.

Ich frage mich jetzt also wozu man die Styles ausser für bunte Schalterchen verwenden kann.

creehawk
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.060 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: VCL Styles : ignoriert Schiftart

  Alt 16. Sep 2019, 14:15
Hast du denn mal tiefer debuggt?
Also an welcher Stelle deine Schriftart noch definiert ist und ab wann sie vom Standard überschrieben wird?

Code:
Winapi.Windows.DrawText(1845586787,'Button1',7,(0, 0, 75, 25, (0, 0), (75, 25)),1024)
Vcl.Styles.DrawText($167DD80,'Button1',(0, 0, 75, 25, (0, 0), (75, 25)),1024)
Vcl.Styles.TSeCustomStyle.DrawStyleText($167DD80,((0, 0, 75, 25, (0, 0), (75, 25)), 'Button1', ktxaMiddleCenter, [], ktxoHorizontal))
Vcl.Styles.TSeStyle.ButtonDrawText(kbscButton,$167DD80,((0, 0, 75, 25, (0, 0), (75, 25)), kbdsHot),((0, 0, 75, 25, (0, 0), (75, 25)), 'Button1', ktxaMiddleCenter, [], ktxoHorizontal),'default')
Vcl.Styles.TCustomStyle.InternalDrawText(???,(teButton, 1, 1),'Button1',(0, 0, 75, 25, (0, 0), (75, 25)),[tfCenter,tfLeft,tfTop,tfVerticalCenter],0)
Vcl.Styles.TCustomStyle.DoDrawText(1845586787,(teButton, 1, 1),'Button1',(0, 0, 75, 25, (0, 0), (75, 25)),[tfCenter,tfLeft,tfTop,tfVerticalCenter],([stfTextColor], 0, 5265845, 1845586787, 2, (23253728, -241), 5265664))
Vcl.Themes.TCustomStyleServices.DrawText(1845586787,(teButton, 1, 1),'Button1',(0, 0, 75, 25, (0, 0), (75, 25)),[tfCenter,tfLeft,tfTop,tfVerticalCenter],0)
Vcl.Themes.TStyleHook.DrawControlText($162D2E0,(teButton, 1, 1),'Button1',(0, 0, 75, 25, (0, 0), (75, 25)),5)
Vcl.StdCtrls.TButtonStyleHook.DrawButton($162D2E0,True)
Vcl.StdCtrls.TButtonStyleHook.Paint(???)
Vcl.Themes.TStyleHook.WMPaint(???)
Vcl.Themes.TStyleHook.WndProc((15, 0, 0, 0, 0, 0, (), 0, 0, (), 0, 0, ()))
Vcl.Themes.TMouseTrackControlStyleHook.WndProc(???)
Vcl.StdCtrls.TButtonStyleHook.WndProc((15, 0, 0, 0, 0, 0, (), 0, 0, (), 0, 0, ()))
Vcl.Themes.TStyleHook.HandleMessage((15, 0, 0, 0, 0, 0, (), 0, 0, (), 0, 0, ()))
Vcl.Styles.TStyleEngine.HandleMessage($15B0A30,(15, 0, 0, 0, 0, 0, (), 0, 0, (), 0, 0, ()),(Vcl.StdCtrls.TButtonControl.WndProc,$15B0A30))
Vcl.Themes.TStyleManager.HandleMessage($15B0A30,(15, 0, 0, 0, 0, 0, (), 0, 0, (), 0, 0, ()),(Vcl.StdCtrls.TButtonControl.WndProc,$15B0A30))
Vcl.Controls.TWinControl.DoHandleStyleMessage(???)
Vcl.Controls.TWinControl.WndProc((15, 0, 0, 0, 0, 0, (), 0, 0, (), 0, 0, ()))
Vcl.StdCtrls.TButtonControl.WndProc((15, 0, 0, 0, 0, 0, (), 0, 0, (), 0, 0, ()))
Vcl.Controls.TWinControl.MainWndProc(???)
System.Classes.StdWndProc(466542,15,0,0)
  Mit Zitat antworten Zitat
creehawk

Registriert seit: 1. Jul 2013
Ort: Hamburg
233 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: VCL Styles : ignoriert Schiftart

  Alt 17. Sep 2019, 06:59
Moin Moin.

Nein, habe ich nicht.

Denn genau an der Stelle werde ich sauer. Ich habe hier 3 Rechner (Win 10 Home, Win 10 Prof., Delphi Starter Community Edition, Delphi 10 Prof.) Auf allen habe ich die oben beschriebene Aktion ausgeführt. Auf allen passiert das Gleiche - nix.

Ich hatte die Verwendung von VCL Styles/FMX Styles als planmäßige Vereinfachung zur optischen Gestaltung der Bedienoberfläche angesehen, die eine Programmierumgebung anbietet. Offensichtlich läuft das aber nicht oder eben nur mit einigen Rumgefummel, das dem Vereinfachungsgedanken eindeutig entgegensteht. Das die eine oder andere Komponente mal mangels Anpassung nicht mit einem Style zusammenarbeitet kann ich noch verknusen. Das an den Dialogboxen rumgefummelt werden muss da WIN spezifisch - okay. Aber solche lapidaren Dinge wie Buttons oder Listboxen aus dem Standardrepertoire?
Die VCL Styles Utils (Rodrigo Ruz) habe ich mit besorgt nach dem Motto: Da hast du Dödel wohl irgendwas übersehen. Aber: auch das Tool zeigt auf allen Rechnern die Schriftarten nicht an. Farbänderungen, die Formbeschriftung usw. schon, aber alles läuft auf die Standardschriftart hinaus.

Vielleicht mache ich ja auch grundlegend etwas falsch. Oder ich vergesse etwas weil ich es nicht weiß.

So jedenfalls ist die Abteilung VCL Styles für mich noch Mummpitz. Ich lasse mich gerne eines besseren belehren.

creehawk
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.060 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: VCL Styles : ignoriert Schiftart

  Alt 17. Sep 2019, 08:12
Vermutung: Die Schriftart, die im Objektinspektor für die visuelle Komponente eingetragen ist, überschreibt die Schriftart aus dem Style und "gewinnt".
Ich vermute, dass ist sogar "as designed".
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.021 Beiträge
 
Delphi 12 Athens
 
#6

AW: VCL Styles : ignoriert Schiftart

  Alt 17. Sep 2019, 08:55
Ein konkretes Testbeispiel wäre hier eventuell hilfreich.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
creehawk

Registriert seit: 1. Jul 2013
Ort: Hamburg
233 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: VCL Styles : ignoriert Schiftart

  Alt 17. Sep 2019, 14:08
Moin Moin.

Beispiel? Hae ich doch oben schon - grob - angegeben.

Aber es geht auch kürzer.

Bitmap-Stil-Designer starten.
Den Stil <Sky> laden.
Über den Menübefehl <Stil> <Schriftname zuweisen> eine Schrift auswählen, zur Abschreckung <Comic Sans MS>.
Speichern.
Mit <F9> Stil testen.
Die Formname wird hübsch in der gewählten Schriftart angezeigt. Sonst aber nix.
In der Liste der Objekte des Bitmap-Stil-Designers ist die Schriftart überall eingestellt und wird dort auch angezeigt.

Und wenn ich nun eine normale VCL Anwendung erstelle, Button + Listbox + Label auf die Form setze, in den Projekt Optionen>Erscheinungsbild >Sky< auswähle und als Standard festlege passiert - auch nix. Die Formüberschrift ist Comic Sans, sonst nichts.

creehawk
  Mit Zitat antworten Zitat
creehawk

Registriert seit: 1. Jul 2013
Ort: Hamburg
233 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: VCL Styles : ignoriert Schiftart

  Alt 19. Sep 2019, 09:54
Moin Moin.

Also nichts Neues? VCL Styles sind also Mummpitz?

creehawk
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.060 Beiträge
 
Delphi 10.4 Sydney
 
#9

AW: VCL Styles : ignoriert Schiftart

  Alt 19. Sep 2019, 10:00
Bitte wie oben vorgeschlagen einfach mal hinterher debuggen und deine Erkenntnisse teilen.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.021 Beiträge
 
Delphi 12 Athens
 
#10

AW: VCL Styles : ignoriert Schiftart

  Alt 19. Sep 2019, 10:01
Also nichts Neues? VCL Styles sind also Mummpitz?
Würde ich so nicht sagen. Ich setze VCL Styles bei mehreren Kunden erfolgreich ein, bei denen es in der Regel um Corporate Identity geht. Ein Problem wie du es beschreibst ist dort offenbar noch nicht aufgetaucht.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz