Scrollbox "positionieren"

Rund um die LCL und andere Komponenten

Scrollbox "positionieren"

Beitragvon am2 » 29. Jul 2019, 13:37 Scrollbox "positionieren"

Ich habe vor, ein TImage in einer Scrollbox zu positionieren, also z.B.

Bild: 1000 x 2000
Scrollbox 100 x 100

Die Mitte der Scrollbox soll auf Pixel (250, 250) des Bildes positioniert werden (also bei 25%/12,5%)

Ich habe mir jetzt eine ScrollBox mit einem Image in der Mitte sowie ein Edit auf ein Formular gepappt und mit <ScrollBox>.ScrollBy(DeltaX, DeltaY) herumgespielt.

Folgende Erkenntnisse:
- Anscheinend beziehen sich DeltaX, DeltaY auf das innere Bild. ScrollBy(250, 250) von (0;0) aus sollte also eigentlich zu der gewünschten Positionierung führen (von irgendwelchen Rundungen mal abgesehen)
- Wenn ich mehrfach hintereinander die selbe Operation ausgeführt habe, dann verschob es das hin und her
- negative Werte erzeugten (erwartungsgemäß) eine negative Verschiebung
- Die Position der Scrollbalken wird nicht verschoben

Hat jemand eine Idee, wo ich meinen Fehler suchen muss?

Vielen Dank
AM
am2
Lazarusforum e. V.
 
Beiträge: 111
Registriert: 21. Dez 2010, 10:59
OS, Lazarus, FPC: Win (L 0.9.26 beta FPC 2.2.2) | 
CPU-Target: 32 Bit
Nach oben

Beitragvon six1 » 30. Jul 2019, 13:18 Re: Scrollbox "positionieren"

Naja, ohne tiefer einzusteigen behaupte ich mal folgendes:

ScrollBy verschiebt um die angegebenen Pixel, sonst würde es ja PositionTo heißen...

ohne nachzusehen, funktioniert dies?
ScrollBox1.HorzScrollBar.Position := 250;
Gruß, Michael
six1
 
Beiträge: 111
Registriert: 1. Jul 2010, 19:01

• Themenende •

Zurück zu Komponenten und Packages



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste

cron
porpoises-institution
accuracy-worried