【PythonでGUIアプリ開発】tkinterのTreeViewを使って表を作成する

Tkinter

tkinterのTreeViewを使えば、簡単に表を作成することができます。

今回は、TreeViewで簡単なToDoリストを作成してみました。

スポンサーリンク

実装コード

import tkinter as tk
import tkinter.ttk as ttk

main_win = tk.Tk()
main_win.title("To Doリスト")
main_win.geometry("400x300")

tree = ttk.Treeview(main_win)

# 列を作成(3列)
tree["columns"] = (1,2,3)
# ヘッダーの設定
tree["show"] = "headings"
tree.heading(1,text="期限")
tree.heading(2,text="タイトル")
tree.heading(3,text="詳細")
# 各列の幅設定
tree.column(1,width=100)
tree.column(2,width=100)
tree.column(3,width=300)
# データ挿入
tree.insert("", "end", values=("4/10", "風呂掃除", "カビ取りまでやる"))
tree.insert("", "end", values=("4/22", "書類作成", "審査に必要な書類を完成させる"))
tree.insert("", "end", values=("4/29", "書類提出", "書類を郵便で送る"))
# 表の配置
tree.pack()

main_win.mainloop()
スポンサーリンク

実行結果

スポンサーリンク

解説

TreeViewを使うには、tkinter.ttkのモジュールをインポートする必要があります。

10~20行がTreeViewで作成する表の設定になります。

tree[“columns”] = (1,2,3)は左から列のインデックスを指定しています。
次のtree.heading(1,text=”期限”)の1とtree[“columns”] = (1,2,3)の1が対応しています。
headingのtextがヘッダーとして表示するテキスト内容になります。

tree.column(1,width=100)のwidthで幅を指定します。
挿入するデータのサイズに合わせて調整しましょう。
またウィンドウのサイズ自体も一緒に調整した方が良いです。

表に表示したいデータはinsertを使います。
データを末尾に追加していく場合は、実装コードの通り、end指定します。
データの内容はvalueとして、入力しましょう。

最後に表を配置して表の完成です。

ここまでTreeViewのかなり基本的なことだけ解説しました。
直感的に設定できるところが多いので、あまり難しくはありません。

コメント

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