tkinter學習系列之(七)Frame與Labelframe 控件

目錄

[TOC]

前言

Frame與Labelframe都是容器,用來存放其他控件,也是用來更好的管理布局。

我一般是用來存放一組相關的控件,讓Frame與Labelframe成為其他控件的父控件。

(一)Frame

(1)說明:

tk.Frame(master, option*)

一般用顏色來區(qū)分Frame的位置

(2)源代碼:

import tkinter as tk

win = tk.Tk()

# 定義第一個容器
frame_left = tk.Frame(win, bg="green")
frame_left.place(relx=0.2, rely=0.2, relwidth=0.3, relheight=0.6)

label_1 = tk.Label(frame_left, text="富強")
label_1.place(relx=0.2, rely=0.2)

label_2 = tk.Label(frame_left, text="民主")
label_2.place(relx=0.6, rely=0.2)

label_3 = tk.Label(frame_left, text="文明")
label_3.place(relx=0.2, rely=0.6)

label_4 = tk.Label(frame_left, text="和諧")
label_4.place(relx=0.6, rely=0.6)

# 定義第二個容器
frame_right = tk.Frame(win, bg="yellow")
frame_right.place(relx=0.5, rely=0.2, relwidth=0.3, relheight=0.6)
label_1 = tk.Label(frame_right, text="自由")
label_1.place(relx=0.2, rely=0.2)

label_2 = tk.Label(frame_right, text="平等")
label_2.place(relx=0.6, rely=0.2)

label_3 = tk.Label(frame_right, text="公正")
label_3.place(relx=0.2, rely=0.6)

label_4 = tk.Label(frame_right, text="法治")
label_4.place(relx=0.6, rely=0.6)

win.mainloop()

(3)輸出效果:

01.png

(二)Labelframe

(1)說明:

大體上,Labelframe與Frame屬性選項一樣。

Labelframe有兩點不同于Frame:

  1. Labelframe默認的邊框使tk.GROOVE,relief=tk.GROOVE
  2. Labelframe還可以再邊框寫文字,即:text="文字"
邊框文字的位置:

默認是:labelanchor="wn"

03.png

(2)源代碼:

import tkinter as tk

win = tk.Tk()

# 定義第一個容器
frame_left = tk.LabelFrame(win, text="國家層面", labelanchor="n")
frame_left.place(relx=0.2, rely=0.2, relwidth=0.3, relheight=0.6)

label_1 = tk.Label(frame_left, text="富強")
label_1.place(relx=0.2, rely=0.2)

label_2 = tk.Label(frame_left, text="民主")
label_2.place(relx=0.6, rely=0.2)

label_3 = tk.Label(frame_left, text="文明")
label_3.place(relx=0.2, rely=0.6)

label_4 = tk.Label(frame_left, text="和諧")
label_4.place(relx=0.6, rely=0.6)

# 定義第二個容器
frame_right = tk.LabelFrame(win, text="社會層面", labelanchor="n")
frame_right.place(relx=0.5, rely=0.2, relwidth=0.3, relheight=0.6)
label_1 = tk.Label(frame_right, text="自由")
label_1.place(relx=0.2, rely=0.2)

label_2 = tk.Label(frame_right, text="平等")
label_2.place(relx=0.6, rely=0.2)

label_3 = tk.Label(frame_right, text="公正")
label_3.place(relx=0.2, rely=0.6)

label_4 = tk.Label(frame_right, text="法治")
label_4.place(relx=0.6, rely=0.6)

win.mainloop()

(3)輸出效果:

02.png

作者:Mark

日期:2019/02/15 周五

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容