TScrollBar/de: what changed
Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.
Title: TScrollBar/de
| Old | New | Line | |
|---|---|---|---|
| 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 | + |  | |
| 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 | + |  | |
| 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).* |
