Platzbedarf #PB_Container_Raised

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
Daffy0815
Beiträge: 390
Registriert: 15.06.2005 00:44
Wohnort: 65719 Hofheim
Kontaktdaten:

Platzbedarf #PB_Container_Raised

Beitrag von Daffy0815 »

Hallo Leute,

Gibt es eine Möglichkeit den Platzbedarf unten und rechts in Pixeln zu berechnen der von der Gesamtbreite bzw. Höhe für den Rand verloren geht bei Verwendung von "#PB_Container_Raised"?
Im Prinzip so etwas wie "Inner_width" bei den Fenstern.

Gruß

Daffy
Wir sind LINUX
Widerstand ist zwecklos - Sie werden emuliert
Benutzeravatar
Regenduft
Beiträge: 574
Registriert: 25.03.2008 15:07
Wohnort: THE LÄÄÄND!

Re: Platzbedarf #PB_Container_Raised

Beitrag von Regenduft »

In der kommenden 5.20 geht's dann.
PureBasic-Hilfe (GadgetWidth/GadgetHeight) hat geschrieben:- #PB_Gadget_ActualSize : gibt die aktuelle Breite/Höhe des Gadgets zurück, in Pixel (Standard).
- #PB_Gadget_RequiredSize: gibt die für eine vollständige Darstellung des Gadgets benötigte Breite/Höhe zurück, in Pixel.
Ansonsten geht's auf Windows mit GetSystemMetrics_().
PureBasic 5.73 LTE x86/x64 | Windows 7 (x64)
Benutzeravatar
Daffy0815
Beiträge: 390
Registriert: 15.06.2005 00:44
Wohnort: 65719 Hofheim
Kontaktdaten:

Re: Platzbedarf #PB_Container_Raised

Beitrag von Daffy0815 »

@Regenduft

Erst mal Danke für die Antwort!

Ich verstehe allerdings nicht was für ein "Objekt" denn ein Container ist.
Bei den Parametern von "GetSystemMetrics_" kommt der "Container" doch garnicht vor!

Kann es sein das der "Container" einfach nur ein "Window" ist?

Gruß

Daffy
Wir sind LINUX
Widerstand ist zwecklos - Sie werden emuliert
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Platzbedarf #PB_Container_Raised

Beitrag von RSBasic »

Alle Win32-Elemente unter Windows sind Fenster, ob ein Button, eine CheckBox o.ä.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Regenduft
Beiträge: 574
Registriert: 25.03.2008 15:07
Wohnort: THE LÄÄÄND!

Re: Platzbedarf #PB_Container_Raised

Beitrag von Regenduft »

Um mal konkret zu werden: #SM_CXEDGE und #SM_CYEDGE sollten die richtigen Konstanten sein. Bin mir aber nicht 100%ig sicher. X- und Y-Stärke getrennt abfragen ist sinnvoll, da aktuell zwar der Rahmen horizontal wie vertikal die gleiche Stärke hat, aber das könnte sich ja theoretisch in einer künftigen Windows-Version ändern.

Code: Alles auswählen

Debug GetSystemMetrics_(#SM_CXEDGE) ; <- gibt bei mir 2 rück
Debug GetSystemMetrics_(#SM_CYEDGE) ; <- gibt bei mir 2 rück

Offtopic: Ich find's auch bescheiden, dass bei Windows Betriebssystem, Fenster und Gadgets alle gleich genannt werden (gut, manchmal liest man auch "Controls" für Gadgets). Das kann ja nur zu Verwirrung führen.
PureBasic 5.73 LTE x86/x64 | Windows 7 (x64)
Benutzeravatar
Daffy0815
Beiträge: 390
Registriert: 15.06.2005 00:44
Wohnort: 65719 Hofheim
Kontaktdaten:

Re: Platzbedarf #PB_Container_Raised

Beitrag von Daffy0815 »

@Regenduft

Habe es getestet!
War genau das was ich gesucht habe!
Hintergrund der Sache ist ein Programm bei dem unabhängig von der Auflösung des Ausgabegerätes alle Elemente so in den vorhandenen Platz im Fenster eingepasst bzw. skaliert werden das das Bild immer gleich und vollständig dargestellt wird.

Gruß

Daffy
Wir sind LINUX
Widerstand ist zwecklos - Sie werden emuliert
Antworten