tkinter - ttk.Scrollbar

ttk.Scrollbar

Eine Scrollleiste. Für Beispiele, wie man eine Scrollbar mit anderen Widgets nutzt, siehe beispielsweise Canvas oder Listbox.

ttk.Scrollbar erzeugen

sb = ttk.Scrollbar(parent, Optionen)

Scrollbar kennt die Optionen:

OptionsnameBeschreibung
commandCallback, die bei Änderung aufgerufen wird. Parameter variieren:
  • Zieht man am Anfasser, werden zwei Parameter übergeben: (tk.MOVETO, value). value ist ein Wert zwischen 0.0 und 1.0, der angibt, um wie weit der Schieberegler gezogen wird.
  • Klickt man in den grauen Bereich neben dem Anfasser, wird (tk.SCROLL, ±1, tk.PAGES) übergeben, wobei hier +1 oder -1 übergeben wird.
  • Klickt man auf die Pfeile am Ende des Schiebereglers, wird (tk.SCROLL, ±1, tk.UNITS) übergeben. Auch hier ist das Vorzeichen abhängig davon, wo genau man hinklickt.
orientAusrichtung der Scrollbar: tk.VERTICAL, tk.HORIZONTAL

ttk.Scrollbar kennt die Standardoptionen: class_, cursor, style, takefocus

Das folgende Programm stellt eine Scrollbar vor und reagiert auf Mausklicks:

Bild der Anwendung
import tkinter as tk
from tkinter import ttk
from tkinter import font

class A(tk.Tk):
    def __init__(self):
        super().__init__()
        self.geometry('400x400')
        self._createWidgets()

    def _createWidgets(self):
        sb = ttk.Scrollbar(self, orient=tk.HORIZONTAL, command=self._onScroll)
        sb.pack(expand=tk.YES, fill=tk.X)
        sb.set(0.2, 0.3)

    def _onScroll(self, A, B, C='unused'):
        print('Wert:', A, B, C)

if __name__ == '__main__':
    window = A()
    window.mainloop()

Scrollbar-Methoden

MethodeParameterRückgabewertBeschreibung
sb.get()-ListeScrollbar-Einstellungen werden als Liste zurückgegeben
sb.set(first, last)Werte zwischen 0…1- Diese Methode wird typischerweise intern von xscrollcommand und yscrollcommand des zugehörigen Widgets verwendet. Es wird der sichtbare Bereich gesetzt.

Sowie die allgemeinen Widgetmethoden:

Referenzen

Siehe Auch

https://www.tcl.tk/man/tcl8.7/TkCmd/ttk_scrollbar.html