Property Editor für Font undefiniert ?

Rund um die LCL und andere Komponenten
Antworten
siro
Beiträge: 730
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Property Editor für Font undefiniert ?

Beitrag von siro »

Einen schönen guten Morgen,

mit ist aufgefallen, dass generell bei jeder Komponente die ich aufs Formular ziehe
und dann den Property Editor für Font öffne, die Fontbox zunächst undefiniert ist.
Wenn ich also im Objektinspektor auf Font klicke weil ich die Schriftgrösse ändern will,
ist noch kein Font ausgewählt, obwohl die Komponente ja einen hat.
Das ändert sich auch nicht wenn ich ParentFont auf True setze.
Ich muss im Property Editor Fontbox also ersteinmal einen Font auswählen, ab dann läuft es richtig mit der Fontbox.

Vielleicht ist das auch nur bei mir so ? ist ja auch kein Weltuntergang... :D

Nun wünsche ich allen einen schönen Sonntag.
Siro
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: Property Editor für Font undefiniert ?

Beitrag von theo »

Das ist schon richtig. Da ist einfach alles auf "Standard" gesetzt, also die Systemeinstellungen.
Für plattformübergreifende Entwicklung lässt man das am Besten so.

Wenn du zur Laufzeit die Standardeinstellungen lesen willst, geht das z.B. so für den Namen:

Code: Alles auswählen

GetFontData(Form1.Font.Handle).Name; 


etc.

Mathias
Beiträge: 6164
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Property Editor für Font undefiniert ?

Beitrag von Mathias »

Für plattformübergreifende Entwicklung lässt man das am Besten so.

Wieso nur für Plattformübergreifende ?

Ich würde dies generell nicht verstellen, ausser es ist etwas spezielles.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

siro
Beiträge: 730
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: Property Editor für Font undefiniert ?

Beitrag von siro »

Hallo,
ich wollte da auch nichts verstellen.
ich dachte nur der Property Editor liest die Eigenschaft aus der Komponente.
und wenn das auf Standard steht, was immer das auch ist, müsste er das doch anzeigen.

Mit:
GetFontData(Form1.Font.Handle).Name;

erscheint bei mir "Segoe UI"
Dann ist dies mein Standard Font unter Windows ?
Den Fontnamen habe ich noch nie gehört.

Was ist daran Plattformübergreifend. Ich denke jedes System müste da einen entsprechenden Namen zurück liefern.
Er zeigt doch den Label auch mit dem entsprechendem Font an.
Vermutlich fehlt mir da "einiges" an Hintergrundwissen... :oops:

[edit] Segoe UI:
grad mal gegoogelt:
https://de.wikipedia.org/wiki/Segoe_UI
ist wohl der Ablöser für den Tahoma Font.

Siro
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: Property Editor für Font undefiniert ?

Beitrag von theo »

siro hat geschrieben:erscheint bei mir "Segoe UI"
Dann ist dies mein Standard Font unter Windows ?

Ja https://de.wikipedia.org/wiki/Segoe_UI

siro hat geschrieben:Was ist daran Plattformübergreifend. Ich denke jedes System müste da einen entsprechenden Namen zurück liefern.

Tut es auch. Nur unter Linux wahrscheinlich nicht Segoe UI.

siro hat geschrieben:Er zeigt doch den Label auch mit dem entsprechendem Font an.
Vermutlich fehlt mir da "einiges" an Hintergrundwissen... :oops:

"Default" heißt einfach, dass nicht dein Programm den Font bestimmt, sondern die Einstellungen des Betriebssystems.
Wenn da etwas anderes als "default" steht, dann wäre das auch für andere Plattformen verbindlich.
So schwer zu verstehen?

siro
Beiträge: 730
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: Property Editor für Font undefiniert ?

Beitrag von siro »

[/quote] So schwer zu verstehen?[/quote]
In meinem Alter schon. :?

Okay, hätte ja sein können, das da lediglich einei Initialisierung fehlt.
Dann soll das eben so sein.

Danke für die Info.

Siro
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

Antworten