Tkinter 튜토리얼-스크롤바

  1. Tkinter ScrollBar
  2. Tkinter 가로 스크롤 막대

Tkinter Scrollbar 위젯은 일반적으로 ListBox,Text 또는 Canvas 와 같은 위젯을 세로로 또는 Entry 를 가로로 스크롤하는 데 사용됩니다. 올바른 위치에 슬라이더가 표시됩니다.

Tkinter ScrollBar

import tkinter as tk

class Scrollbar_Example:
    def __init__(self):
        self.window = tk.Tk()

        self.scrollbar = tk.Scrollbar(self.window)
        self.scrollbar.pack(side="right", fill="y")

        self.listbox = tk.Listbox(self.window, yscrollcommand=self.scrollbar.set)
        for i in range(100):
            self.listbox.insert("end", str(i))
        self.listbox.pack(side="left", fill="both")

        self.scrollbar.config(command=self.listbox.yview)

        self.window.mainloop()


if __name__ == '__main__':
    app = Scrollbar_Example()  

Tkinter 스크롤바 기본

self.scrollbar = tk.Scrollbar(self.window)

스크롤바 인스턴스를 시작합니다.

self.listbox = tk.Listbox(self.window, yscrollcommand=self.scrollbar.set)
.
.
self.scrollbar.config(command=self.listbox.yview)

‘Listbox’와 ‘Scrollbar’를 모두 올바르게 연결하려면 구성해야합니다.

  1. yscrollcommand 콜백을 Scrollbarset 으로 설정하십시오. yscrollcommand는 스크롤 막대로 제어되는 스크롤 가능한 위젯 옵션으로, 수직 스크롤바.
  2. 스크롤바의 commandListboxyview 로 설정하십시오. 사용자가 ‘스크롤바’슬라이더를 움직이면 적절한 인수로 ‘yview’메소드를 호출합니다.

Tkinter 가로 스크롤 막대

가로 스크롤 막대는 ‘텍스트’및 ‘항목’과 같은 위젯을 가로 방향으로 스크롤하는 데 사용됩니다.

import tkinter as tk

class Scrollbar_Example:
    def __init__(self):
        self.window = tk.Tk()

        self.scrollbar = tk.Scrollbar(self.window, orient=tk.HORIZONTAL)
        self.scrollbar.pack(side="bottom", fill="x")

        self.text = tk.Text(self.window,
                            wrap = "none",
                            xscrollcommand=self.scrollbar.set)
        
        self.text.insert("end", str(dir(tk.Scrollbar)))
        self.text.pack(side="top", fill="x")

        self.scrollbar.config(command=self.text.xview)

        self.window.mainloop()


if __name__ == '__main__':
    app = Scrollbar_Example()  

Tkinter 스크롤바 가로

self.scrollbar = tk.Scrollbar(self.window, orient=tk.HORIZONTAL)

‘orient’를 ‘HORIZONTAL’로 지정하여 가로 스크롤 막대를 시작합니다.

self.text = tk.Text(self.window,
                            wrap = "none",
                            xscrollcommand=self.scrollbar.set)

텍스트를 가로로 스크롤하려면 위의 예에서와 같이 xscrollcommandScrollbarset 메소드로 설정해야합니다.

self.scrollbar.config(command=self.text.xview)

이에 상응하여, 가로 스크롤 막대의 콜백은 yview 가 아닌 xview 메소드로 연결되어야합니다.