Diese Funktion berechnet und setzt die optimale Fontgröße für ein Gui-Element.
Gerade, wenn man eine größenveränderbare GUI erstellt, hat man beim Resizing immer das Problem, dass sich die Fontgröße nicht mit ändert.
Meine Funktion ermöglicht genau das (siehe Beispiel).
Edit 07.10.2021:
- Die Funktionen zu einer UDF ("CalcFontSize.au3") zusammengefasst. Diese kann jetzt per #include 'CalcFontSize.au3' in eigene Projekte eingebunden werden.
- Um ein Label/Button für die automatische Fontgrößen-Anpassung zu registrieren, reicht nun ein _CalcFontSizeRegister($idCtrl) (siehe Example).
- Die Anpassung geschieht jetzt in der Window-Procedur (Callback-Funktion). Damit ist GuiRegisterMsg wieder frei und das Maximieren/Wiederherstellen muss nicht mehr extra behandelt werden.
Edit 09.10.2021:
- Ich habe die UDF noch um eine Funktion erweitert _CalcFontSize. So eine Funktion kann ganz hilfreich sein, wenn man ein mehrsprachiges Programm schreibt und die Übersetzungen unterschiedlich lang sind. Dann kann man mit dieser Funktion die Anpassung einmalig (ohne Registrierung) aufrufen.
- Das Beispielscript habe ich mal um ein zusätzliches Label erweitert, damit man den Unterschied sehen kann.
- Einen kleinen Fehler beseitigt. In der WindowProc wurde die Fontgroesse erst nach dem ausmessen um eins verringert. Behoben!