前言
上機實踐課程開始了,嗯,老師來了之后念了下PPT,然后說:開始做吧.........
然后就開始了Python的GUI之路,以前沒接觸過PYthon的可視化界面(雖然這樣很不明智)
但是現在做起來感覺寫小工具還挺方便的,當時搜到的第一個庫便是Tkinter就直接開始寫了
后來發現QT很不錯的樣子,下個實驗就用QT吧.然后關于Tkinter(python3.6)
計算器源碼 ennn.....有的命名不規范.......
首先對于python中棧的實現是通過list的方式模擬
pop()出棧,append()入棧
首先我們來看一下常用的TKinter提供的核心小構件類:
| 小構件類 | 描述 |
|---|---|
| Button | 按鈕 |
| Canvas | 結構化圖形,用于繪制圖形,創建圖形編輯器以及實現自定義小構件類 |
| Checkbutton | 單擊復選按鈕在值之間切換 |
| Entry | 文本域或稱文本框 |
| Frame | 容器(可包含其他的小構件) |
| Label | 顯示文本或圖像 |
| Menu | 顯示下拉菜單和彈出菜單的菜單欄 |
| Menubutton | 下拉菜單的菜單按鈕 |
| Message | 類似于標簽顯示文本,但能自動將文本放在給定寬高內 |
| Radiobutton | 單選按鈕 |
| Text | 格式化的文本顯示,支持內嵌圖片和文本,允許用不同風格和屬性顯示和編輯文本 |
開始一個窗口
做一個可視化的東西,首先想到的坑定是窗口吧
窗口又有很多構成,比如title,ico,size,bd,菜單等.
import tkinterimport osfrom tkinter import *class Calculator(object): """計算器""" def __init__(self): self.tk=tkinter.Tk() #實例化 self.tk.title('計算器') self.tk.minsize(370,460) self.tk.maxsize(400,400) #也可以用self.tk.resizable(0, 0)來禁止調節大小 self.tk.iconbitmap(os.getcwd()+'/favicon.ico') def start(self): self.tk.mainloop() if __name__ == '__main__': NewCalculator=Calculator() NewCalculator.start()這里就生成了一個基本的窗口,對于其中的mainloop()的作用
如果我們刪除它,窗口會一閃而過,它就是為了防止這種情況
面板顯示
做成計算器之后坑定要先是計算結果,這里就需要生成顯示面板
當然我們也會很自然地聯想到顯示內容的字體設置等需求,具體事例在下面代碼
....import tkinter.font as tkfont.... #字體設置 self.EntryFont=tkfont.Font(self.tk,size=13) self.ButtonFont=tkfont.Font(self.tk,size=12) #面板顯示 self.count=tkinter.StringVar() self.count.set('0') self.label=tkinter.Label(self.tk,bg='#EEE9E9',bd='3',fg='black',anchor='center',font=self.EntryFont,textvariable=self.count) self.label.place(y=10,width=380,height=40)....
|
新聞熱點
疑難解答