[譯][Tkinter 教程02] Message 控件

已獲原做者受權. 原系列地址: Python Tkinter

Message 控件

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
相關文章
相關標籤/搜索