<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # Tkinter 簡介 > 原文: [http://zetcode.com/tkinter/introduction/](http://zetcode.com/tkinter/introduction/) 在 Tkinter 教程的這一部分中,我們介紹 Tkinter 工具包并創建我們的第一個程序。 本教程的目的是幫助您開始使用 Tkinter 工具包。 ## Tkinter Tkinter 是與 Tk GUI 工具包的 Python 綁定。 Tk 是 Tcl 語言的原始 GUI 庫。 Tkinter 被實現為 Python 封裝程序,圍繞著嵌入在 Python 解釋器中的完整 Tcl 解釋器。 還有其他幾種流行的 Python GUI 工具箱。 最受歡迎的是 wxPython,PyQt 和 PyGTK。 ## Python ![python logo](https://img.kancloud.cn/78/25/78255d9e1a407e68e8c0a8722c25f35e_149x148.jpg) Python 是一種通用的,動態的,面向對象的編程語言。 Python 語言的設計目的強調程序員的生產力和代碼可讀性。 Python 最初是由 Guido van Rossum 開發的。 它于 1991 年首次發布。Python 受 ABC,Haskell,Java,Lisp,Icon 和 Perl 編程語言的啟發。 Python 是一種高級,通用,多平臺,解釋性語言。 Python 是一種簡約語言。 它最明顯的特征之一是它不使用分號或括號。 Python 使用縮進代替。 目前,Python 有兩個主要分支:Python 2.x 和 Python3.x。 Python 3.x 打破了與早期版本 Python 的向后兼容性。 它的創建是為了糾正該語言的某些設計缺陷并使該語言更簡潔。 本教程使用 Python 2.x 編寫。 大多數代碼是用 Python 2.x 版本編寫的。 軟件基礎和程序員將需要一些時間才能遷移到 Python3.x。 今天,Python 由世界各地的一大批志愿者維護。 Python 是開源軟件。 對于那些想學習編程的人來說,Python 是一個理想的起點。 Python 編程語言支持多種編程樣式。 它不會強迫程序員采用特定的示例。 Python 支持面向對象和過程編程。 對函數式編程的支持也很有限。 Python 編程語言的官方網站是 [python.org](http://python.org) ## Pillow Pillow 是一個 Python 庫,用于打開,操作和保存許多不同的圖像文件格式。 本教程中的某些示例使用 Pillow。 ```py $ sudo apt-get install python-pil.imagetk ``` 在 Debian Linux 上,我們可以使用其包管理器安裝 Pillow。 ```py $ yum install python-imaging ``` 在使用 RPM 包格式的系統上,我們使用上述命令安裝 Pillow。 ```py $ pip install pillow ``` 或者,我們可以使用`pip`安裝枕頭。 ## Tkinter 的簡單例子 在第一個示例中,我們在屏幕上顯示一個基本窗口。 `simple.py` ```py #!/usr/bin/env python3 """ ZetCode Tkinter tutorial This script shows a simple window on the screen. Author: Jan Bodnar Last modified: April 2019 Website: www.zetcode.com """ from tkinter import Tk, BOTH from tkinter.ttk import Frame class Example(Frame): def __init__(self): super().__init__() self.initUI() def initUI(self): self.master.title("Simple") self.pack(fill=BOTH, expand=1) def main(): root = Tk() root.geometry("250x150+300+300") app = Example() root.mainloop() if __name__ == '__main__': main() ``` 盡管這段代碼很小,但是應用窗口可以做很多事情。 可以調整大小,最大化或最小化。 隨之而來的所有復雜性對應用員都是隱藏的。 ```py from tkinter import Tk, BOTH from tkinter.ttk import Frame ``` 在這里,我們導入`Tk`和`Frame`類,以及`BOTH`常量。 `Tk`類用于創建根窗口。 `Frame`是其他小部件的容器。 ```py class Example(Frame): def __init__(self): super().__init__() ``` 我們的示例類繼承自`Frame`容器窗口小部件。 在`__init__()`構造器方法中,我們稱為繼承類的構造器。 ```py self.initUI() ``` 我們將用戶界面的創建委托給`initUI()`方法。 ```py self.master.title("Simple") ``` 我們使用`title()`方法設置窗口的標題。 `master`屬性可訪問根窗口(Tk)。 ```py self.pack(fill=BOTH, expand=1) ``` `pack()`方法是 Tkinter 中的三個幾何管理器之一。 它將小部件組織成水平和垂直框。 這里,我們將通過`self`屬性訪問的`Frame`小部件放置到 Tk 根窗口中。 它向兩個方向擴展。 換句話說,它占用了根窗口的整個客戶端空間。 ```py root = Tk() ``` 根窗口已創建。 根窗口是我們程序中的主應用窗口。 它具有標題欄和邊框。 這些由窗口管理器提供。 必須在任何其他小部件之前創建它。 ```py root.geometry("250x150+300+300") ``` `geometry()`方法設置窗口的大小并將其放置在屏幕上。 前兩個參數是窗口的寬度和高度。 最后兩個參數是 x 和 y 屏幕坐標。 ```py app = Example() ``` 在這里,我們創建應用類的實例。 ```py root.mainloop() ``` 最后,我們進入主循環。 事件處理從這一點開始。 mainloop 從窗口系統接收事件,并將其分配給應用小部件。 當我們單擊標題欄的關閉按鈕或調用`quit()`方法時,它將終止。 ![Simple](https://img.kancloud.cn/8e/c6/8ec6ba77dab1c30cf5956abae2611c32_252x175.jpg) 圖:簡單 window ## Tkinter 居中窗口 該腳本使屏幕上的窗口居中。 `center_window.py` ```py #!/usr/bin/env python3 """ ZetCode Tkinter tutorial This script centers a small window on the screen. Author: Jan Bodnar Last modified: April 2019 Website: www.zetcode.com """ from tkinter import Tk, BOTH from tkinter.ttk import Frame class Example(Frame): def __init__(self): super().__init__() self.initUI() def initUI(self): self.master.title("Centered window") self.pack(fill=BOTH, expand=1) self.centerWindow() def centerWindow(self): w = 290 h = 150 sw = self.master.winfo_screenwidth() sh = self.master.winfo_screenheight() x = (sw - w)/2 y = (sh - h)/2 self.master.geometry('%dx%d+%d+%d' % (w, h, x, y)) def main(): root = Tk() ex = Example() root.mainloop() if __name__ == '__main__': main() ``` 我們需要有窗口的大小和屏幕的大小,才能將窗口放置在監視器屏幕的中央。 ```py w = 290 h = 150 ``` 這些是應用窗口的寬度和高度值。 ```py sw = self.master.winfo_screenwidth() sh = self.master.winfo_screenheight() ``` 我們確定屏幕的寬度和高度。 ```py x = (sw - w)/2 y = (sh - h)/2 ``` 我們計算所需的 x 和 y 坐標。 ```py self.master.geometry('%dx%d+%d+%d' % (w, h, x, y)) ``` 最后,使用`geometry()`方法將窗口放置在屏幕中央。 ## Tkinter 退出按鈕 在本章的最后一個示例中,我們創建一個具有退出按鈕的應用。 當我們按下按鈕時,應用終止。 `quit_button.py` ```py #!/usr/bin/env python3 """ ZetCode Tkinter tutorial This program creates a Quit button. When we press the button, the application terminates. Author: Jan Bodnar Last modified: April 2019 Website: www.zetcode.com """ from tkinter import Tk, BOTH from tkinter.ttk import Frame, Button, Style class Example(Frame): def __init__(self): super().__init__() self.initUI() def initUI(self): self.style = Style() self.style.theme_use("default") self.master.title("Quit button") self.pack(fill=BOTH, expand=1) quitButton = Button(self, text="Quit", command=self.quit) quitButton.place(x=50, y=50) def main(): root = Tk() root.geometry("250x150+300+300") app = Example() root.mainloop() if __name__ == '__main__': main() ``` 我們在窗口上放置一個`Button`。 單擊該按鈕將終止該應用。 ```py from tkinter.ttk import Frame, Button, Style ``` Tkinter 支持小部件的主題。 主題的窗口小部件可以從`ttk`模塊導入。 在撰寫本文時,并非所有小部件都可使用。 例如,到目前為止,不支持菜單或列表框。 ```py self.style = Style() self.style.theme_use("default") ``` 我們為小部件應用主題。 一些受支持的主題是蛤,默認,替代或經典。 ```py quitButton = Button(self, text="Quit", command=self.quit) ``` 我們創建`Button`小部件的實例。 此按鈕的父級是`Frame`容器。 我們為按鈕和命令提供標簽。 該命令指定了當我們按下按鈕時調用的方法。 在我們的例子中,調用`quit()`方法,該方法將終止應用。 ```py quitButton.place(x=50, y=50) ``` 我們使用`place`幾何圖形管理器將按鈕定位在絕對坐標中-從窗口的左上角起 50x50px。 ![Quit button](https://img.kancloud.cn/21/1e/211e1ab7ce4e0bbfeae012e6285ead33_252x176.jpg) 圖:退出按鈕 本節是 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>

                              哎呀哎呀视频在线观看