Sign in Join
Wiki copytemporary

TScrollBar/de: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: TScrollBar/de

OldNewLine
1+Diese Seite erklärt, wie man die [[doc:lcl/stdctrls/tscrollbar.html|TScrollBar]] Komponente verwendet. Auf etwas klicken bedeutet immer ein Linksklick, ein Rechtsklick wird explizit erwähnt.
2+
3+## Beschreibung
4+
5+Ein Steuerelement, welches dem Benutzer erlaubt, den Inhalt eines zugeordneten Steuerelements zu blättern, indem dieser einen Schieberegler verschiebt.
6+
7+![](/wiki-images/a/aa/Comp_Standard_TScrollBar.png)
8+
9+## Verwendung
10+
11+Um eine Komponente [[doc:lcl/stdctrls/tscrollbar.html|TScrollBar]] auf einem [[TForm/de|Formular]] zu nutzen, können sie diese einfach auf der Komponentenpalette *Standard* auswählen und, mit einem Klick auf das Formular, platzieren.\
12+
13+#### Kleines Beispiel
14+
15+Verschieben Sie ein Image auf Ihrem Formular in Abhängigkeit der Scrollbarpositionen
16+
17+- platzieren Sie zwei TScrollBars auf Ihrem Formular
18+- ändern Sie im Objektinspektor die Eigenschaften der ersten Scrollbar *Name* in *sbVert*, *Kind* in *sbVertical* und *Align* in *alRight*
19+- ändern Sie im Objektinspektor die Eigenschaften der zweiten Scrollbar *Name* in *sbHori* und *Align* in *alBottom*
20+- fügen Sie eine [[TPaintBox/de|TPaintBox]] (Komponentenpalette Additional) dem Formular hinzu und stellen Sie dessen *Align* auf *alClient*
21+- fügen Sie noch eine [[TImageList/de|TImageList]] (Komponentenpalette Common Controls) dem Formular hinzu
22+- laden Sie ein Image in die ImageList:
23+ - rechtsklicken Sie die ImageList1 und wählen Sie den *ImageList-Editor...* im Popupmenü aus
24+ - klicken Sie auf *Hinzufügen* und wählen ein Image (möglichst ein kleines Icon 16x16 z.B. unter Lazarus/Images/icons/lazarus16x16)
25+ - beenden Sie Ihre Wahl mit *OK*
26+- wählen Sie Ihre PaintBox an und erstellen Sie im Objektinspektor unter Ereignisse den Eventhandler für das Ereignis *OnPaint* und schreiben Sie folgenden Quelltext hinein:
27+
28+``` pascal
29+procedure TForm1.PaintBox1Paint(Sender: TObject);
30+begin
31+ ImageList1.Draw(
32+ Paintbox1.Canvas,
33+ sbHori.Position * (PaintBox1.ClientWidth - ImageList1.Width) div sbHori.Max,
34+ sbVert.Position * (Paintbox1.ClientHeight - ImageList1.Height) div sbVert.Max,
35+ 0);
36+end;
37+```
38+
39+- nun lassen Sie bei jeder Änderung der Scrollbarpositionen das Formular neu zeichnen, indem Sie den Eventhandler *OnChange* für eine ScrollBar erstellen und diesen für die andere Scrollbar ebenfalls aufrufen:
40+
41+``` pascal
42+procedure TForm1.sbVertChange(Sender: TObject);
43+begin
44+ RePaint;
45+end;
46+```
47+
48+So könnte Ihr kleines Programm aussehen:
49+
50+![](/wiki-images/c/cb/ScrollBarExample.png)
51+
52+## Siehe auch
53+
54+[[TTrackBar/de|TTrackBar]]\
55+[[TScrollBox/de|TScrollBox]]
56+
57+---
58+*From the Free Pascal wiki, page "TScrollBar/de", as it stood on 2020-03-01 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history