前言
上机实践课程开始了,嗯,老师来了之后念了下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)....
新闻热点
疑难解答