Python
 Computer >> コンピューター >  >> プログラミング >> Python

TkinterでExcelのような表形式テーブルを作成するには?Treeviewウィジェットの使い方

Tkinterは、GUIベースのデスクトップアプリケーションを構築するためのPython標準ライブラリです。Tkinterには、アプリケーションのニーズに合わせてUIを設計できる多彩な機能とウィジェットが用意されています。

表形式でデータを表示したい場合に最適なのがTreeviewウィジェットです。Treeviewは、MS Excelのように列を追加・定義し、そこへ値を挿入できるウィジェットです。さらに、NumPyやPandasなどのPythonライブラリと組み合わせれば、バックエンドでのデータ処理やクエリ実行にも対応でき、本格的なデータ管理画面を構築できます。

Treeviewウィジェットの基本構文

Treeviewウィジェットは、Treeview(parent, column=(**col), **options) コンストラクタを定義することで作成します。作成後は、列を追加したり、行データを挿入したりすることが可能です。

サンプルコード

# 必要なライブラリをインポート
from tkinter import *
from tkinter import ttk

# tkinterフレームのインスタンスを作成
win = Tk()

# ウィンドウサイズを設定
win.geometry("700x350")

# Treeviewウィジェットを追加
tree = ttk.Treeview(win, column=("c1", "c2", "c3"), show='headings')
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=('XYZ', 'ABC', '123'))
tree.pack()

win.mainloop()

実行結果

上記のコードを実行すると、3つの列(ID、FName、LName)を持つ表形式のウィンドウが表示され、行データが正しく挿入されていることが確認できます。

TkinterでExcelのような表形式テーブルを作成するには?Treeviewウィジェットの使い方

まとめ

TkinterでExcelのようなテーブルを実装したい場合は、ttkモジュールのTreeviewウィジェットを使用するのが最も簡単かつ効果的な方法です。列見出しの設定、中央揃えなどの表示オプション、insert()メソッドによるデータ追加など、基本的な操作をマスターすれば、実用的なデータ一覧画面を短時間で構築できます。

  1. SCPとSFTPの違いを徹底解説!ファイル転送にはどちらを使うべきか

    SCP(Secure Copy Protocol)とSFTP(Secure File Transfer Protocol)は、ローカル環境での不定期なファイル転送に便利なFTP(File Transfer Protocol)の代替手段として広く利用されているプロトコルです。この3つはいずれも、Ethernet経由でファイルをある場所から別の場所へ移動するために役立ちます。ただし、FTPがデータを平文で送信するのに対し、SCPとSFTPの2つはSSH(Secure Shell)プロトコルを使用して通信を行う点が大きく異なります。 SCPとSFTPとは何か? SCP(Secure Copy Pr

  2. Allo vs WhatsApp徹底比較:どちらのメッセージアプリがあなたに合っている?

    Googleの新メッセージアプリ「Allo」は、WhatsAppの王座を奪うことができるのでしょうか?リリース当初から話題を集めてきたこのアプリですが、世界的人気を誇るWhatsAppにとって本当に脅威となる存在なのか気になるところです。世界中の見出しを飾ったプライバシー問題はさておき、総合的なユーザー体験という観点では、果たしてどちらのアプリが優れているのでしょうか?どちらを使うべきか迷っている方のために、それぞれのアプリが持つメリットをわかりやすくご紹介します。自分に合った選択をする際の参考にしてみてください!WhatsAppを選ぶべき理由WhatsAppは多くの人にとっておなじみの存在で