![]() |
[FM] sanftes Scrollen in Scrollbox
Hallo,
gibt es eine Möglichkeit, in einer Scrollbox den Viewport sanft zu ändern, so dass der Nutzer sieht wo es lang geht? Ich kann über
Delphi-Quellcode:
die Scrollposition zwar ändern, aber der Nutzer ist sofort an der Position und hat u.U. keine Ahnung, wo er gerade ist oder woher er kommt.
ScrollBox1.ViewportPosition := TPointF(x, y);
ScrollBox1.ScrollTo(x, y); ScrollBox1.ScrollBy(x, y); |
AW: [FM] sanftes Scrollen in Scrollbox
Hallo quaero,
wenn ich dich richtig verstanden habe, dann sollte die Eigenschaft ![]() Die Eigenschaft ![]() Grüße Headbucket |
AW: [FM] sanftes Scrollen in Scrollbox
Nein, er nicht den Benutzer an Scrollbalken ziehen lassen sondern programmgesteuert an eine bestimmte Stelle scrollen.
Ich hätte gedacht, man könnte einfach eine
Delphi-Quellcode:
nehmen. Ich stehe dann aber direkt auf dem Schlauch, da ich nicht weiß, wie man
TFloatAnimation
Delphi-Quellcode:
animieren könnte. Denn
ViewportPosition.Y
Delphi-Quellcode:
ist ein Record und wenn er den abfragt, bekommt er nur eine Kopie des Originals. Die kann er munter verändern, da hat nur niemand etwas von. :|
ViewPortPosition
|
AW: [FM] sanftes Scrollen in Scrollbox
Edit: Ausversehen auf antworten geklickt. Wie kann man seine eigenen Beiträge löschen?
Damit der Post nicht total sinnlos ist eine Quick & Dirty Lösung: Die Zielposition über eine Schleife / einen Timer in kleinen Schritten ändern. "Sanft" und "schön" ist jedoch etwas anderes... . |
AW: [FM] sanftes Scrollen in Scrollbox
Ja, und vor allem sollte das eigentlich etwas sein dass man im Jahr 2015 nicht mehr unbedingt selber machen will sondern eigentlich in seinem GUI-Framework erwartet. Die Animations-Komponenten in FireMonkey sind ja da, und ich finde die gar nicht übel. :thumb:
Aber wie man die hier zum Einsatz bringen kann ist mir schleierhaft. Die Embarcadero-Beispiele sind meist praxisferne rotierende Buttons, das hier ist eigentlich der Standardfall :oops: |
AW: [FM] sanftes Scrollen in Scrollbox
Ich werde mal schauen, ob ich mit FloatAnimation und ScrollTo etwas anfangen kann.
|
AW: [FM] sanftes Scrollen in Scrollbox
Es würde einem ja helfen wenn man bei der TFloatAnimation in ihrem Event abfragen könnte, um wie viel sie den Wert verändert hat. Gibt es da etwas?
Dann könnte man ja selber um eben diesen Wert scrollen... |
AW: [FM] sanftes Scrollen in Scrollbox
Ich habe nochmal geschaut, seit 10 Seattle gibt es eine "TPresendetScrollBox".
Eine hier rein geschmissene TFloatAnimation "findet" dort drinnen viel mehr, unter anderen auch ein "VScrollBar.Value". Damit lässt sich mit drei Klicks doch ein schönes animiertes "Scroll to Top" basteln. :-) |
AW: [FM] sanftes Scrollen in Scrollbox
Ich hatte gerade mal versucht, über eine Zählschleife was zu basteln, was aber nicht wirklich schön anzusehen war.
Die PresentedScrollBox schau ich mir gleich mal an. |
AW: [FM] sanftes Scrollen in Scrollbox
Ich habe jetzt die PresentedScrollBox genutzt und das Scrollen funktioniert und ist schön sanft. Allerdings habe ich in der Scrollbox nur ein Bild, das gezoomt werden kann und zentral ausgerichtet ist. Wenn ich in das Bild reinzoome, dann komme ich weder an den oberen noch an den linken Teil ran, weil der Viewport in keiner Ausrichtung kleiner Null sein darf (weder per Code noch per Touch). :( Rechts unten komme ich genau bis zum Bildrand.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz