Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Größe einer Standard-Checkbox-Grafik ermitteln (https://www.delphipraxis.net/152862-groesse-einer-standard-checkbox-grafik-ermitteln.html)

RSE 9. Jul 2010 15:12

Größe einer Standard-Checkbox-Grafik ermitteln
 
Hallo!

Ich benötige eine Checkbox mit Autosize-Funktion in Delphi 5 (Abhängig von der Schrift). Da TCheckbox diese nicht hat, möchte ich sie selbst programmieren. So weit kein Problem, allerdings weiß ich nicht, wie ich an die Größe der Box selbst herankommen soll. Die TCheckbox hat eine Höhe von 17. Diese Höhe findet sich auch in Design-Guidelines von MS wieder (http://msdn.microsoft.com/en-us/libr...#controlsizing). Die Höhe der Box selbst ist allerdings 13. Zumindest mit meinem aktuellen Theme. Ich habe keine Win32 API Funktion gefunden, die mir diese Höhe zurückgibt.

Der einzige Workaround, der mir momentan einfällt: ich nehme als minimale Höhe 17, falls -Font.Height kleiner ist, ansonsten Height := -Font.Height.

Wer kennt eine Win32-API Funktion, mit der ich mir die tatsächliche Größe der Checkbox zurückgeben lassen kann?

hoika 9. Jul 2010 16:33

AW: Größe einer Standard-Checkbox-Grafik ermitteln
 
Hallo,

GetSystemMetrics mit SM_CXMENUCHECK

Ist zwar die CheckBox bei Menus, aber die Größe der CheckBitmap bei Menus sollte die gleiche sein.


Heiko

RSE 12. Jul 2010 09:27

AW: Größe einer Standard-Checkbox-Grafik ermitteln
 
Also nach der Beschreibung war ich der Meinung, es handele sich dabei um die Größe des Häkchens, das vor einem gecheckten Menüeintrag erscheint, und das ist ja ein anderes als das in einer Checkbox. Zumal dieses Häkchen ja ohne die eigentliche Checkbox dargestellt wird. Mich interessiert die Größe der Box.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:22 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