【完全独学Python】Tkinterでスクロールバー(Scrollbar)を作る!

デスクトップアプリ

こんにちは!ゆーや(@yuyamanm118712)です。

こちらのページでは完全独学でWebプログラマとなった私が

デスクトップアプリには必須!!Tkinterでスクロールバー(Scrollbar)を表示する方法をご紹介します!

スクロールバーは、豊富なコンテンツをGUI上に乗せるには必須のウィジェットです!

最後までじっくりと読んで、一緒に学習にしていきましょう。

なお、ご指摘・ご質問はTwitter(@yuyamanm118712)のDMまでよろしくお願いします。

この記事を読むと

  • Tkinterでスクロールバーが作成できる!
  • TkinterでScrollbarの基本的な使い方について理解できる!
  • TkinterでScrollbarのオプションについて理解できる!

Scrollbarとは

Scrollbarは、ウィンドウ内のコンテンツを上下(垂直)または左右(水平)にスクロールするためのウィジェットです!

ゆーや
ゆーや

この記事ではTkinterを扱うよ!
もし、Tkinterについて知りたい人は以下の記事を見てね!

Scrollbarの基本

Scrollbar作成までのサンプルコード

import tkinter as tk

# メインウィンドウの作成
root = tk.Tk()
root.title("tkinter Scrollbar - 完全独学Python")
root.geometry("600x400")

# フレームの作成
frame = tk.Frame(root)
frame.pack(fill=tk.BOTH, expand=True)

# テキストウィジェットの作成
text = tk.Text(frame, wrap='none')
text.pack(side=tk.LEFT, fill=tk.BOTH, expand=True)

# 垂直スクロールバーの作成
v_scrollbar = tk.Scrollbar(frame, orient=tk.VERTICAL, command=text.yview)
v_scrollbar.pack(side=tk.RIGHT, fill=tk.Y)

# スクロールバーをテキストウィジェットに設定
text.config(yscrollcommand=v_scrollbar.set)

# サンプルの長いテキストを挿入
sample_text = "テキストのサンプルです。\n" * 100
text.insert(tk.END, sample_text)

# メインループの開始
root.mainloop()
ゆーや
ゆーや

スクロールバーが出てきたね!

Scrollbarを作成して、yscrollcommandにsetまで忘れないように!
あと画面より多くのウィジェットを配置しないと、出ないので注意!

Scrollbarのオプション

スクロールバーの向きを指定(orient)

import tkinter as tk

# メインウィンドウの作成
root = tk.Tk()
root.title("tkinter Scrollbar - 完全独学Python")
root.geometry("600x400")

# フレームの作成
frame = tk.Frame(root)
frame.pack(fill=tk.BOTH, expand=True)

# テキストウィジェットの作成
text = tk.Text(frame, wrap='none')
text.pack(side=tk.LEFT, fill=tk.BOTH, expand=True)

# 垂直スクロールバーの作成
v_scrollbar = tk.Scrollbar(frame, orient=tk.VERTICAL, command=text.yview)
v_scrollbar.pack(side=tk.RIGHT, fill=tk.Y)

# 水平スクロールバーの作成
h_scrollbar = tk.Scrollbar(frame, orient=tk.HORIZONTAL, command=text.xview)
h_scrollbar.pack(side=tk.BOTTOM, fill=tk.X)

# スクロールバーをテキストウィジェットに設定
text.config(yscrollcommand=v_scrollbar.set, xscrollcommand=h_scrollbar.set)

# サンプルの長いテキストを挿入
sample_text = "これが長いテキストのサンプルです。" * 100
text.insert(tk.END, sample_text)

# メインループの開始
root.mainloop()
ゆーや
ゆーや

縦向き横向きのスクロールバーを作ってみたよ!

横向きの方はちょっと形が違うので注意!
横はxscrollcommandにsetしよう!

まとめ

本記事では、Scrollbarを使って、Tkinterで画面にスクロールバーを表示する方法を紹介しました!

ポイントは以下の2つです!

① Tkinterで画面にスクロールバーを表示するには「Scrollbar」を使う
② 「orient」メソッドは、スクロールバーの向きを指定

ゆーや
ゆーや

まとめの内容を見て、もう頭に浮かべば完璧!
今日もお疲れ様です!

コメント

タイトルとURLをコピーしました