Tkinterで列(カラム)付きのリストボックスを表示する方法
アプリケーションで大量のデータを扱う場合、Tkinterが提供するTreeviewウィジェットが非常に便利です。Treeviewは、行と列から構成される表形式でデータを表示できるほか、さまざまな機能を備えています。
Treeviewウィジェットを使用すると、表の作成、データの挿入、表内のデータ操作などが簡単に行えます。Treeviewウィジェットは、Treeview(parent, column, **options) コンストラクタを定義することで生成できます。
サンプルコード
# 必要なライブラリをインポート
from tkinter import *
from tkinter import ttk
# tkinterフレームのインスタンスを作成
win = Tk()
# ウィンドウサイズを設定
win.geometry("700x350")
s = ttk.Style()
s.theme_use('clam')
# Treeviewウィジェットを追加
tree = ttk.Treeview(win, column=("c1", "c2", "c3"), show='headings', height=5)
tree.column("# 1", anchor=CENTER)
tree.heading("# 1", text="ID")
tree.column("# 2", anchor=CENTER)
tree.heading("# 2", text="FName")
tree.column("# 3", anchor=CENTER)
tree.heading("# 3", text="LName")
# Treeviewウィジェットにデータを挿入
tree.insert('', 'end', text="1", values=('1', 'Joe', 'Nash'))
tree.insert('', 'end', text="2", values=('2', 'Emily', 'Mackmohan'))
tree.insert('', 'end', text="3", values=('3', 'Estilla', 'Roffe'))
tree.insert('', 'end', text="4", values=('4', 'Percy', 'Andrews'))
tree.insert('', 'end', text="5", values=('5', 'Stephan', 'Heyward'))
tree.pack()
win.mainloop()
コードのポイント
- column=("c1", "c2", "c3"):表示する列を定義します。
- show='headings':ヘッダー(見出し)のみを表示し、ツリー構造を非表示にします。
- tree.heading():各列の見出しテキストを設定します。
- tree.insert():第1引数に親要素(ここでは空文字)、
valuesに各列の値を渡して行を追加します。
実行結果
上記のコードを実行すると、複数の列(ID・FName・LName)を持つ項目一覧が表形式で表示されます。

-
Tkinterで簡単な画面(ウィンドウ)を作成する方法【初心者向け】
Pythonの標準GUIライブラリ「Tkinter」を使えば、わずか数行のコードで簡単な画面(ウィンドウ)を作成できます。追加のインストールは不要で、Pythonさえあればすぐに試せるのが魅力です。この記事では、Tkinterによる基本的なウィンドウの作り方を手順付きで解説します。 作成手順(アルゴリズム) シンプルな画面を作る流れは、以下の3ステップです。 ステップ1:tkinterモジュールをインポートする ステップ2:Tkクラスのオブジェクト(ウィンドウ)を作成する ステップ3:イベントループを開始して画面を表示する サンプルコード import tkinter as tk # ウィン
-
Tkinterを使って外部プログラムを開く方法を解説
アプリケーションを開発していると、外部のプログラムやアプリケーションと連携する必要が出てくることがあります。システム上のアプリケーションやプログラムを操作するには、Pythonのosモジュールを利用します。この記事では、osモジュールを使って外部プログラムと連携し、ファイルを開く方法を詳しく解説します。まず、filedialogライブラリを使用して、ユーザーが選択したファイルを開くための関数を定義します。次に、選択されたファイルのパスを画面に表示し、osモジュールを使ってそのファイルを実行します。コード例# 必要なライブラリをインポート from tkinter import * from t