tkinter フレームの中にボタンを作成する方法

プラグラミング言語「PYTHON」を使ってみよう!!

業務自動化・効率化の実例を踏まえ、解説できればと思っています。対象は、プログラムを学び始めた初心者向けとなります。

今回はGUI開発アプリケーションのtkinterを使用します。tkinterはディスクトップアプリ作成のための定番ライブラリです。

今回の内容

  • tkinter ウインドウの中にフレームを作成する
  • フレームを入れ子にする
  • フレームの中にボタンを作成する



サンプルコード

#tkinterのインポート
import tkinter as tk

#ボタンを押した時の関数
def func():
    print("ボタンが押されました")

#ウインドウの作成
root = tk.Tk()
#ウインドウのタイトル
root.title("ウインドウ")
#ウインドウサイズと位置指定 幅,高さ,x座標,y座標 
root.geometry("600x400+50+50")

#フレームを入れ子で作成。黒いフレームは「frame」、白いフレームは「frame2」
frame = tk.Frame(root, width=580, height=380, padx=10, pady=10, bg="black")
frame.place(x=10, y=10)

frame2 = tk.Frame(frame, relief=tk.FLAT, bg="white", bd=2)
frame2.place(x=10, y=10, width=540, height=340)

#ボタンの作成。ボタンが押されると「func()」が呼び出される
button = tk.Button(frame2, text="ボタン", command=func)
button.place(x=10, y=10)

#メインループ
root.mainloop()

出力

tkinterでフレームの中にボタンを作成してみました。

構成としては、

800×600サイズのウインドウの中に、580×380サイズののフレーム1があり(色の黒いところ)、さらにその中に540×340サイズのフレーム2があります。

ボタンはフレーム2の中に作成しました。ボタンが押されると、printが実行されるようにしました。

フレームの配置は、packでもgridでもよいですが、xy座標を指定できるのが便利なのでplaceをよく使っています。

created by Rinker
翔泳社
タイトルとURLをコピーしました