已獲原做者受權. 原系列地址: Python Tkinter
Message 控件用來展現一些文字短消息. Message 和 Label 控件有些相似, 但在展現文字方面比 Label 要靈活, 好比 Message 控件能夠改變字體, 而 Label 控件只能使用一種字體. 它提供了一個換行對象, 以使文字能夠斷爲多行. 它能夠支持文字的自動換行及對齊. 這裏要澄清一下前面提到的 Message 控件能夠改變字體的說法: 這是說咱們能夠爲單個控件設置任意字體, 控件內的文字都將顯示爲該字體. 但咱們不能給單個控件內的文字設置多種字體. 若是你須要這麼作, 能夠考慮使用 Text 控件.
建立一個 Message 控件的語法以下:w = Message ( master, option, ... )
下面是一個小例子, 咱們用 Message 控件展現了一條甘地的名言:php
from Tkinter import * master = Tk() whatever_you_do = "Whatever you do will be insignificant, but it is very important that you do it.\n(Mahatma Gandhi)" msg = Message(master, text = whatever_you_do) msg.config(bg='lightgreen', font=('times', 24, 'italic')) msg.pack( ) mainloop( )
上面的例子運行後顯示以下:python
若是要在 Python3 中運行上述腳本, 就須要修改一下 import 語句. 以前咱們這樣寫:segmentfault
from Tkinter import *
在 Python3 中須要這樣寫:oop
from tkinter import *
屬性名稱 | 屬性含義 |
---|---|
anchor | 指示文字會被放在控件的什麼位置, 可選項有 N, NE, E, SE, S, SW, W, NW, CENTER. 默認爲 CENTER. |
aspect | 控件的寬高比, 即 width/height , 以百分比形式表示. 默認爲 150, 即 Message 控件寬度比其高度大 50%. 注意: 若是顯式的指定了控件寬度, 則該屬性將被忽略. |
background | 控件的背景色. 默認值爲當前窗口系統的默認背景色. |
bg | 同 background. |
borderwidth | 邊框寬度. 默認爲2. |
bd | 同 borderwidth. |
cursor | 定義鼠標移動到 Message 上時的光標樣式. 默認爲系統標準樣式. |
font | 文字字體. 默認爲當前系統默認. |
foreground | 文字顏色. 默認爲當前系統默認. |
fg | 同 foreground |
highlightbackground | 和 highlightcolor, highlightthickness 這兩個屬性一塊兒指定了控件如何繪製高亮區域. |
highlightcolor | 參考 highlightbackground. |
highlightthickness | 參考 highlightbackground. |
justify | 指示多行文本如何對齊. 可選項爲 LEFT, RIGHT, CENTER. 默認爲 LEFT. 注意: 該屬性指示文字對齊方式. 若是要指定文字在控件內的位置, 請使用 anchor 屬性. |
padx | 水平方向的邊距. 默認爲 -1, 即無邊距. |
pady | 垂直方向的邊距. 默認爲 -1, 即無邊距. |
relief | 邊框樣式. 默認爲 FLAT. 其餘可選項爲 SUNKEN, RAISED, GROOVE, RIDGE. |
takefocus | 若是設置爲 True, 控件將能夠獲取焦點. 默認爲 False. |
text | 文字內容. 控件將根據寬度自動對文字進行斷行. |
textvariable | 關聯一個 Tkinter variable 對象, 一般爲 StringVar 對象. 控件文本將在該對象改變時跟着改變. |
width | 控件寬度, 單位爲 charater units (不是像素). 若是未指定該選項, 將根據 aspect 屬性自動設置寬度. |
全系列:
[譯][Tkinter 教程01] 入門: Label 控件
[譯][Tkinter 教程02] Message 控件
[譯][Tkinter 教程03] Button 控件
[譯][Tkinter 教程04] Variable 類
[譯][Tinkter 教程05] Radiobutton 控件
[譯][Tkinter 教程06] Checkbox 控件
[譯][Tkinter 教程07] Entry 控件
[譯][Tkinter 教程08] Canvas 圖形繪製
[譯][Tkinter 教程09] Scale 控件
[譯][Tkinter 教程10] Text 控件
[譯][Tkinter 教程11] 對話框和消息框
[譯][Tkinter 教程12] 佈局管理 (Pack Place Grid)
[譯][Tkinter 教程13] Mastermind 遊戲
[譯][Tkinter 教程14] menu 菜單
[譯][Tkinter 教程15] event 事件綁定
譯者水平有限, 若有疏漏, 歡迎指正.
已得到原做者受權. 原文地址: Message Widget