Ideale Größe einer ScrollArea berechnen
Verfasst: 17.11.2014 19:46
"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?
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?