【スポンサーリンク】
縦方向に積み重ね表示
ウィジェットに対してpackメソッドを実行すると、ウィジェットが積み重ねて表示される。デフォルトでは縦方向に上から順番にウィジェットが表示されていく。
import tkinter root = tkinter.Tk() #Button5個をPackで表示 for i in range(5): b_top = tkinter.Button( root, text="pack: " + str(i+1), bg="lightblue", ) b_top.pack() #packで積み重ね表示 root.mainloop()
packメソッドのsideオプションをbottomに設定することで、下から順番に積み上げ表示させることができる。(デフォルトではtop)
import tkinter root = tkinter.Tk() #Button5個をPackで表示(下から) for i in range(5): b_top = tkinter.Button( root, text="pack: " + str(i+1), bg="lightblue", ) b_top.pack(side="bottom") #packで積み重ね表示 root.mainloop()
【スポンサーリンク】
横方向に積み重ね表示
sideオプションをleftまたはrightにすることで、横方向に積み重ね表示することができる。以下、右から横方向に積み重ね表示する例を示す。
import tkinter root = tkinter.Tk() #Button5個をPackで表示(右から) for i in range(5): b_top = tkinter.Button( root, text="pack: " + str(i+1), bg="lightblue", ) b_top.pack(side="right") #packで積み重ね表示 root.mainloop()
【スポンサーリンク】
表示領域の設定
fillオプションを用いて、ウィジェットを表示する領域を設定することができる。
import tkinter root = tkinter.Tk() #Button5個をPackで表示 for i in range(5): b_top = tkinter.Button( root, text="pack: " + str(i+1), bg="lightblue", ) b_top.pack(fill="x") #packで積み重ね表示 root.mainloop()
fillオプションをxにすることで、ウィジェットを横方向全域に表示させることができる。また、yに設定すると縦方向全域表示となる。
余白の設定
padxオプションで、ウィジェット間の余白を設定することができる。
import tkinter root = tkinter.Tk() #Button5個をPackで表示 for i in range(5): b_top = tkinter.Button( root, text="pack: " + str(i+1), bg="lightblue", ) b_top.pack(pady=5) #packで積み重ね表示 root.mainloop()
オプション
オプション | 動作 | fill | 占有領域の設定 x, y, both, None(デフォルト) |
---|---|
side | 積み上げ方向の設定 top(デフォルト), bottom, left, right |
padx, pady | ウィジェット外側の隙間の設定 |
ipadx, ipady | ウィジェット内側の隙間の余白 |
【スポンサーリンク】