<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # Tkinter 標準小部件屬性 > 原文: [http://zetcode.com/tkinter/attributes/](http://zetcode.com/tkinter/attributes/) 在 Tkinter 教程的這一部分中,我們討論標準的窗口小部件屬性,包括光標,浮雕,顏色和字體。 標準窗口小部件屬性是在窗口小部件構造器中使用的關鍵字。 ## Tkinter 小部件狀態 `state`屬性定義窗口小部件的狀態。 它可以具有以下值:`NORMAL`,`ACTIVE`和`DISABLED`。 `widget_states.py` ```py #!/usr/bin/env python3 """ ZetCode Tkinter tutorial In this script, we use the state attribute. Author: Jan Bodnar Last modified: April 2019 Website: www.zetcode.com """ from tkinter import Tk, BOTH, NORMAL, ACTIVE, DISABLED from tkinter.ttk import Frame, Label class Example(Frame): def __init__(self): super().__init__() self.initUI() def initUI(self): self.master.title("Fonts") self.pack(fill=BOTH, expand=True) self.columnconfigure(0, pad=5) self.columnconfigure(1, pad=5) self.columnconfigure(2, pad=5) txt = "Today is a beautiful day" label1 = Label(self, text=txt, state=NORMAL) label1.grid(row=0, column=0) label2 = Label(self, text=txt, state=ACTIVE) label2.grid(row=0, column=1) label3 = Label(self, text=txt, state=DISABLED) label3.grid(row=0, column=2) def main(): root = Tk() ex = Example() root.geometry("+300+300") root.mainloop() if __name__ == '__main__': main() ``` 我們在`Label`小部件上演示`state`屬性。 ```py label1 = Label(self, text=txt, state=NORMAL) ``` 第一個標簽具有`NORMAL`狀態。 ![Widget state](https://img.kancloud.cn/36/9e/369e8877af55d16725eca6c48919fb2c_452x41.jpg) 圖:小部件狀態 ## Tkinter 小部件填充 `padx`和`pady`屬性為小部件添加了額外的水平和垂直空間。 `padding.py` ```py #!/usr/bin/env python3 """ ZetCode Tkinter tutorial This program uses the padx and pady widget attributes. Author: Jan Bodnar Last modified: April 2019 Website: www.zetcode.com """ from tkinter import Tk, Frame, Button from tkinter import BOTH, LEFT, TOP class Example(Frame): def __init__(self): super().__init__() self.initUI() def initUI(self): self.master.title("Padding") self.pack(fill=BOTH) frame = Frame(self, bd=5) frame.pack() btn1 = Button(frame, text='Button') btn1.pack(side=LEFT, padx=5) btn2 = Button(frame, text='Button') btn2.pack(side=LEFT, padx=5) frame2 = Frame(self) frame2.pack() btn1 = Button(frame2, text='Button') btn1.pack(side=TOP, pady=15) btn2 = Button(frame2, text='Button') btn2.pack(side=TOP, pady=15) self.pack() def main(): root = Tk() root.geometry("300x250+300+300") app = Example() root.mainloop() if __name__ == '__main__': main() ``` 在示例中,我們創建了兩個框架; 他們每個人都有兩個小部件。 第一個框架從按鈕形成一行,第二個框架從列形成一行。 `padx`和`pady`屬性在按鈕之間添加空格。 ```py btn1 = Button(frame, text='Button') btn1.pack(side=LEFT, padx=5) ``` 使用`pack`管理器,我們創建了一行按鈕。 `padx`在按鈕之間水平增加 5px 的間距。 ```py btn1 = Button(frame2, text='Button') btn1.pack(side=TOP, pady=15) ``` 在這里,我們形成一列。 因此,我們使用`pady`屬性垂直添加空間。 ![Padding](https://img.kancloud.cn/ce/a4/cea4424f73387ce7a953c5ade1921d7c_302x275.jpg) 圖:填充 ## 背景顏色 窗口小部件的背景色可以使用`background`屬性設置。 可以縮寫為`bg`。 同樣,可以使用`foreground`屬性設置窗口小部件的前景色。 可以縮寫為`fg`。 `bg_colours.py` ```py #!/usr/bin/env python3 """ ZetCode Tkinter tutorial This program uses sets various background colours with bg attribute. Author: Jan Bodnar Last modified: April 2019 Website: www.zetcode.com """ from tkinter import Tk, Frame, Label from tkinter import BOTH, LEFT class Example(Frame): def __init__(self): super().__init__() self.initUI() def initUI(self): self.master.title("Background colours") self.pack(fill=BOTH) frame = Frame(self, borderwidth=10) frame.pack() lbl1 = Label(frame, bg='SlateGray3', width=15, height=10) lbl1.pack(side=LEFT, padx=3) lbl2 = Label(frame, bg='SlateGray4', width=15, height=10) lbl2.pack(side=LEFT) lbl3 = Label(frame, bg='DarkSeaGreen3', width=15, height=10) lbl3.pack(side=LEFT, padx=3) lbl4 = Label(frame, bg='DarkSeaGreen4', width=15, height=10) lbl4.pack(side=LEFT) self.pack() def main(): root = Tk() root.geometry("+300+300") app = Example() root.mainloop() if __name__ == '__main__': main() ``` 在代碼示例中,我們創建具有四個不同背景顏色的四個標簽。 ```py lbl1 = Label(frame, bg='SlateGray3', width=15, height=10) lbl1.pack(side=LEFT, padx=3) ``` 第一個標簽具有`SlateGray3`背景色。 ![Background colours](https://img.kancloud.cn/61/fb/61fb64f19aa7ae1f6cef595f6cb53f9a_530x189.jpg) 圖:背景色 ## 寬度和高度 `width`和`height`屬性設置窗口小部件的寬度和高度。 `width_height.py` ```py #!/usr/bin/env python3 """ ZetCode Tkinter tutorial This program uses width and height attributes to set the size of widgets. Author: Jan Bodnar Last modified: April 2019 Website: www.zetcode.com """ from tkinter import Tk, Frame, Button from tkinter import BOTH, LEFT class Example(Frame): def __init__(self): super().__init__() self.initUI() def initUI(self): self.master.title("Width and height") self.pack(fill=BOTH) frame = Frame(self, borderwidth=10) frame.pack() btn1 = Button(frame, text='Button') btn1.pack(side=LEFT, padx=5) btn2 = Button(frame, text='Button', width=8) btn2.pack(side=LEFT, padx=5) btn3 = Button(frame, text='Button', width=5, height=4) btn3.pack(side=LEFT) self.pack() def main(): root = Tk() root.geometry("+300+300") app = Example() root.mainloop() if __name__ == '__main__': main() ``` 在示例中,我們使用`width`和`height.`控制按鈕的大小 ```py btn2 = Button(frame, text='Button', width=8) ``` 此按鈕的寬度設置為八個字符。 ![With and height attributes](https://img.kancloud.cn/a2/e1/a2e15ae6597616d7bfc997fae60b3cab_271x115.jpg) 圖:寬高屬性 ## Tkinter 浮雕 浮雕是一種邊界裝飾。 可能的值為:`SUNKEN`,`RAISED`,`GROOVE`,`RIDGE`和`FLAT`。 `reliefs.py` ```py #!/usr/bin/env python3 """ ZetCode Tkinter tutorial This program uses relief styles. Author: Jan Bodnar Last modified: April 2019 Website: www.zetcode.com """ from tkinter import Tk, Frame, Label from tkinter import BOTH, LEFT, FLAT, SUNKEN, RAISED, GROOVE, RIDGE class Example(Frame): def __init__(self): super().__init__() self.initUI() def initUI(self): self.master.title("Reliefs") self.pack(fill=BOTH) frame = Frame(self, borderwidth=10) frame.pack() lbl1 = Label(frame, bg='LightSteelBlue3', width=15, height=10, relief=FLAT) lbl1.pack(side=LEFT, padx=3) lbl2 = Label(frame, bg='LightSteelBlue3', bd=2, width=15, height=10, relief=SUNKEN) lbl2.pack(side=LEFT) lbl3 = Label(frame, bg='LightSteelBlue3', bd=2, width=15, height=10, relief=RAISED) lbl3.pack(side=LEFT, padx=3) lbl4 = Label(frame, bg='LightSteelBlue3', bd=3, width=15, height=10, relief=GROOVE) lbl4.pack(side=LEFT) lbl5 = Label(frame, bg='LightSteelBlue3', bd=3, width=15, height=10, relief=RIDGE) lbl5.pack(side=LEFT, padx=3) self.pack() def main(): root = Tk() root.geometry("+300+300") app = Example() root.mainloop() if __name__ == '__main__': main() ``` 該示例顯示了應用于標簽的五種不同的凸版。 ```py lbl3 = Label(frame, bg='LightSteelBlue3', bd=2, width=15, height=10, relief=RAISED) ``` 第三個標簽具有`RAISED`浮雕。 使用`bd`,我們增加了邊框寬度,以使浮雕更加明顯。 ![Reliefs](https://img.kancloud.cn/e3/66/e3664973339c36421be3641497a399c9_672x193.jpg) 圖:浮雕 ## Tkinter 字體 Tkinter 具有用于處理字體的`tkinter.font`模塊。 它具有一些內置字體,例如`TkTooltipFont`,`TkDefaultFont`或`TkTextFont`。 字體通過`font`屬性設置。 `fonts.py` ```py #!/usr/bin/env python3 """ ZetCode Tkinter tutorial In this script, we display text in three different fonts. Author: Jan Bodnar Last modified: April 2019 Website: www.zetcode.com """ from tkinter import Tk, BOTH from tkinter.ttk import Frame, Label, Notebook, Style from tkinter.font import Font class Example(Frame): def __init__(self): super().__init__() self.initUI() def initUI(self): self.master.title("Fonts") self.pack(fill=BOTH, expand=True) txt = "Today is a beautiful day" myfont = Font(family="Ubuntu Mono", size=16) label1 = Label(self, text=txt, font=myfont) label1.grid(row=0, column=0) label2 = Label(self, text=txt, font="TkTextFont") label2.grid(row=1, column=0) label3 = Label(self, text=txt, font=('Times', '18', 'italic')) label3.grid(row=2, column=0) def main(): root = Tk() ex = Example() root.geometry("+300+300") root.mainloop() if __name__ == '__main__': main() ``` 該示例顯示了三個帶有三種不同字體的文本標簽。 ```py myfont = Font(family="Ubuntu Mono", size=16) label1 = Label(self, text=txt, font=myfont) ``` 使用`Font`類創建特定的字體。 如果該字體在平臺上不可用,則 Tkinter 會還原為某些默認字體。 ```py label2 = Label(self, text=txt, font="TkTextFont") ``` 在這里,我們使用內置字體名稱。 ```py label3 = Label(self, text=txt, font=('Times', '18', 'italic')) ``` 字體也可以指定為字符串元組。 ![Tkinter fonts](https://img.kancloud.cn/1d/50/1d501a8ce1ef491c173607a49f58be62_268x99.jpg) 圖:Tkinter 字體 ## Tkinter 光標 光標是一個小圖標,顯示鼠標指針所在的位置。 使用`cursor`屬性設置 Tkinter 中的光標。 `cursors.py` ```py #!/usr/bin/env python3 """ ZetCode Tkinter tutorial This program uses different cursors. Author: Jan Bodnar Last modified: April 2019 Website: www.zetcode.com """ from tkinter import Tk, Frame, Label from tkinter import BOTH, LEFT class Example(Frame): def __init__(self): super().__init__() self.initUI() def initUI(self): self.master.title("Cursors") self.pack(fill=BOTH) frame = Frame(self, borderwidth=10) frame.pack() lbl1 = Label(frame, bg='SlateGray3', width=15, height=10, cursor='tcross') lbl1.pack(side=LEFT, padx=3) lbl2 = Label(frame, bg='SlateGray4', width=15, height=10, cursor='hand2') lbl2.pack(side=LEFT) lbl3 = Label(frame, bg='DarkSeaGreen3', width=15, height=10, cursor='heart') lbl3.pack(side=LEFT, padx=3) lbl4 = Label(frame, bg='DarkSeaGreen4', width=15, height=10, cursor='pencil') lbl4.pack(side=LEFT) self.pack() def main(): root = Tk() root.geometry("+300+300") app = Example() root.mainloop() if __name__ == '__main__': main() ``` 在示例中,我們有四個標簽。 每個標簽使用不同的光標。 ```py lbl4 = Label(frame, bg='DarkSeaGreen4', width=15, height=10, cursor='pencil') ``` 第四個標簽有一個用于光標的鉛筆圖標。 在 Tkinter 教程的這一部分中,我們使用了標準的窗口小部件屬性。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看