天天看點

Tkinter 元件詳解(十六):Message

Message(消息)元件是 Label 元件的變體,用于顯示多行文本消息。Message 元件能夠自動換行,并調整文本的尺寸使其适應給定的尺寸。

何時使用 Message 元件?

Message 元件用于顯示簡單的文本消息,通常你可以使用 Label 來代替。如果你希望使用多種字型來顯示文本,那麼應該使用 Text 元件。

用法

建立一個 Message 元件,所有你要做的事就是指定要顯示的文本内容。在必要的時候,該元件會自動換行,請随意感受下:

import tkinter as tk

root = tk.Tk()

w1 = tk.Message(root, text="這是一則消息", width=100)
w1.pack()

w2 = tk.Message(root, text="這是一則駭人聽聞的長長長長長消息!", width=100)
w2.pack()

root.mainloop()
           
Tkinter 元件詳解(十六):Message

參數

Message(master=None, **options) (class)

master -- 父元件

**options -- 元件選項,下方表格詳細列舉了各個選項的具體含義和用法:

選項 含義
anchor

1. 控制文本消息的顯示位置

2. "n", "ne", "e", "se", "s", "sw", "w", "nw", 或 "center" 來定位(ewsn 代表東西南北,上北下南左西右東)

3. 預設值是 "center"

aspect

1. 設定高寬比,即寬度/高度的百分比的值

2. 預設值是 150(寬度比高度大 50%)

3. 注意:如果設定了 width 選項的值,該選項将被忽略

background

1. 設定背景顔色

2. 預設值由系統指定

bg 跟 background 一樣
borderwidth

1. 指定邊框寬度

2. 預設值由系統指定,通常是 1 或 2 像素

bd 跟 borderwidth 一樣
cursor

1. 指定當滑鼠在 Message 上飄過的時候的滑鼠樣式

2. 預設值由系統指定

font

1. 指定 Message 中文本的字型

2. 隻能指定一種字型

3. 預設值由系統指定

foreground

1. 設定 Message 的文本的顔色

2. 預設值由系統指定

fg 跟 foreground 一樣
highlightbackground

1. 指定當 Message 沒有獲得焦點的時候高亮邊框的顔色

2. 預設值由系統指定,通常是标準背景顔色

highlightcolor

1. 指定當 Message 獲得焦點的時候高亮邊框的顔色

2. 預設值由系統指定

highlightthickness

1. 指定高亮邊框的寬度

2. 預設值是 0(不帶高亮邊框)

justify

1. 定義如何對齊多行文本

2. 使用 "left","right" 或 "center"

3. 注意,文本的位置取決于 anchor 選項

4. 預設值是 "center"

padx

1. 指定水準方向上的額外間距(内容和邊框間)

2. 機關是像素

pady

1. 指定垂直方向上的額外間距(内容和邊框間)

2. 機關是像素

relief

1. 指定邊框樣式

2. 預設值是 "flat"

3. 另外你還可以設定 "sunken","raised","groove" 或 "ridge"

takefocus

1. 如果是 True,該元件接受輸入焦點

2. 預設值是 False

text

1. 指定 Label 顯示的文本

2. 為了達到指定的高寬比(aspect 選項指定),文本内容将自動進行換行

textvariable

1. Message 顯示 Tkinter 變量(通常是一個 StringVar 變量)的内容

2. 如果變量被修改,Message 的文本會自動更新

width

1. 設定 Message 的寬度

2. 機關是文本單元

3. 如果忽略該選項,将根據 aspect 選項設定的高寬比來設定合适的寬度