Ideale Größe einer ScrollArea berechnen

Für allgemeine Fragen zur Programmierung mit PureBasic.
es_91
Beiträge: 411
Registriert: 25.01.2011 04:48

Ideale Größe einer ScrollArea berechnen

Beitrag von es_91 »

"Hallöchen"!

Wann immer man die Parameter ScrollAreaWidth und ScrollAreaHeight bei ScrollAreaGadget () festlegt, möchte man ja unter Umständen darauf achten, dass bei der Ausführung keine Scroll-Balken entstehen, manchmal im Vertikalen, manchmal im Horizontalen und mal in beiden Richtungen.

Scroll-Balken in beiden Richtungen zu verhindern geht ziemlich einfach - man setzt die angesprochenen Parameter kleiner, als die Größe des Containers. (Durch Ausprobieren oder Berechnung kann man die optimal den Container füllende Größe der ScrollArea herausfinden.)

Was aber, wenn nur eine Richtung feststehen soll, die andere einen Scroll-Balken haben soll? Dann muss man ja, wenn die ScrollArea einen, zum Beispiel, vertikalen Scroll-Balken haben soll, die horizontale Breite dieses Balkens von der vorausberechneten ScrollArea-Breite abziehen, um das Entstehen eines (überflüssigen) horizontalen Scroll-Balkens zu verhindern.

Nun mein Problem: Breite und Höhe der Scroll-Balken sind doch, soweit ich weiß, benutzerdefiniert, man kann unter den Windows-Einstellungen deren Größe auf bis zu 100 Pixel heraufsetzen.

Wie soll man seine ScrollArea einigermaßen gut mit Inhalt füllen, wenn man nicht weiß, wie groß die Scroll-Balken und damit der Abzug sind? Man müsste die Größe der Scroll-Balken abfragen können! Das geht aber mit PureBasic's internen Funktionen nicht.

...Ideen zur Lösung dieses Problems?
Benutzeravatar
NicknameFJ
Beiträge: 324
Registriert: 03.06.2007 14:36
Wohnort: Von der Sonne aus gesehen der dritte Planet

Re: Ideale Größe einer ScrollArea berechnen

Beitrag von NicknameFJ »

Hi es_91,

dort war ein ähnliches Problem


http://www.purebasic.fr/german/viewtopi ... 16&t=28523

und

Code: Alles auswählen

GetSystemMetrics_(#SM_CXVSCROLL)
oder

Code: Alles auswählen

GetSystemMetrics_(#SM_CYHSCROLL)
ist dein Freund :D

NicknameFJ


Edit: copy/paste Fehler in der zweiten Abfrage korrigiert. War zweimal Abfrage des VScroll. Danke TS
Zuletzt geändert von NicknameFJ am 17.11.2014 21:40, insgesamt 3-mal geändert.
PS: Alle im Text enthaltenen Schreibfehler sind beabsichtigt und dienen der Belustigung aller

Bild
es_91
Beiträge: 411
Registriert: 25.01.2011 04:48

Re: Ideale Größe einer ScrollArea berechnen

Beitrag von es_91 »

Der Beitrag ist von gestern! :shock: :oops:

...

Na, frisches Wissen ist immernoch am Besten! ^^

Vielen Dank, NicknameFJ!
Benutzeravatar
NicknameFJ
Beiträge: 324
Registriert: 03.06.2007 14:36
Wohnort: Von der Sonne aus gesehen der dritte Planet

Re: Ideale Größe einer ScrollArea berechnen

Beitrag von NicknameFJ »

Bitte gerne.

Hatte auch Mühe mich heute noch an meine Antwort von gestern zu erinnern :D
PS: Alle im Text enthaltenen Schreibfehler sind beabsichtigt und dienen der Belustigung aller

Bild
es_91
Beiträge: 411
Registriert: 25.01.2011 04:48

Re: Ideale Größe einer ScrollArea berechnen

Beitrag von es_91 »

Hier noch ein kleiner Tipp für Nachschlager:

Die Rahmen des ScrollAreaGadgets betragen unter allen derzeit verfügbaren Windows-Themen (getestet bis Windows 8.1) genau vier Pixel, zwei links und zwei rechts.
Benutzeravatar
CodeCommander
Beiträge: 213
Registriert: 02.03.2014 16:06

Beitrag von CodeCommander »

~ DELETE ~
Zuletzt geändert von CodeCommander am 18.01.2015 14:49, insgesamt 1-mal geändert.
~ DELETE ~
es_91
Beiträge: 411
Registriert: 25.01.2011 04:48

Re: Ideale Größe einer ScrollArea berechnen

Beitrag von es_91 »

Okay, dann nächste Frage: Um welche Konstanten handelt es sich dabei? <)
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Ideale Größe einer ScrollArea berechnen

Beitrag von ts-soft »

Falls neben dem V-Scroll auch noch H-Scroll benötigt wird:

Code: Alles auswählen

Debug GetSystemMetrics_(#SM_CYHSCROLL)
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
es_91
Beiträge: 411
Registriert: 25.01.2011 04:48

Re: Ideale Größe einer ScrollArea berechnen

Beitrag von es_91 »

Danke, ts-soft!
es_91 hat geschrieben:Um welche Konstanten handelt es sich dabei? <)
Antworten