python实战教程1 定时提醒程序的制作(2)
2013-10-04 17:26
691 查看
这回该把定时提醒改成有界面的啦,顺带说下 我用了下程序,发现beep一下不够使,那么多print几下就好了
改成有界面的选择:
1 qt 这个之前用过很好用,起源好像是诺基亚的一个软件部门
2 windows api
3 自带的tk (graphical user interfaces wth tk)
机子已经被我配的乱七八糟了 不想多装东西 这次选用tk api牵扯一堆宏定义 偶尔用下还可以 整体用感觉不爽
先看document里面的tk一些示例,用idle去尝试
刚吃完饭,随便开个电影一边看一边尝试。。。
分析示例程序 init应该为构造函数,pack不懂先跳过去,creatWidgets就是制造界面的控件
看createWidgets内部,先是构造了一个hi_there对象 button 上面的text command对应触发的事件
QUIT对象展示了另一种构造方法。
总结下我们现在不懂的地方可能就一个pack,先把这个搞定然后联想我们之前的程序。
查看文档发现:
To give a widget to the
packer (geometry manager), you call
pack with optional arguments. In Tkinter, the
Pack class holds all this functionality, and the various forms of the
pack command are implemented as methods. All widgets in
tkinter are subclassed from thePacker, and so inherit all thepacking
methods. See thetkinter.tix module documentation for additional
information on the Form g
4000
eometry manager
pack为构造控件地理的函数。我们可以先跳过。
我们现在要做的事情是构造出来界面和我们的timerNote相关联。
我们先试着做一个start和stop控件,然后去寻找一个可以输入数字或者字符串等的控件。
可以触发两个按钮的程序,在此发现点击start不起作用,查询。。。
csdn论坛询问,原来是粗心 变量名和函数名一样了
end起作用是因为在end变量初始化在end函数之后
更正后的代码:
现在两个按键都可以使用了
改成有界面的选择:
1 qt 这个之前用过很好用,起源好像是诺基亚的一个软件部门
2 windows api
3 自带的tk (graphical user interfaces wth tk)
机子已经被我配的乱七八糟了 不想多装东西 这次选用tk api牵扯一堆宏定义 偶尔用下还可以 整体用感觉不爽
先看document里面的tk一些示例,用idle去尝试
刚吃完饭,随便开个电影一边看一边尝试。。。
class Application(tk.Frame): def __init__(self,master=None): tk.Frame.__init__(self,master) self.pack() self.createWidgets() def createWidgets(self): self.hi_there=tk.Button(self) self.hi_there["text"]="Hello World\n(click me)" self.hi_there["command"]=self.say_hi self.hi_there.pack(side="bottom") self.QUIT=tk.Button(self,text="QUIT",fg="red",command=root.destroy) self.QUIT.pack(side="bottom") def say_hi(self): print("hi there,everyone!") root=tk.Tk() app=Application(master=root) app.mainloop()
分析示例程序 init应该为构造函数,pack不懂先跳过去,creatWidgets就是制造界面的控件
看createWidgets内部,先是构造了一个hi_there对象 button 上面的text command对应触发的事件
QUIT对象展示了另一种构造方法。
总结下我们现在不懂的地方可能就一个pack,先把这个搞定然后联想我们之前的程序。
查看文档发现:
To give a widget to the
packer (geometry manager), you call
pack with optional arguments. In Tkinter, the
Pack class holds all this functionality, and the various forms of the
pack command are implemented as methods. All widgets in
tkinter are subclassed from thePacker, and so inherit all thepacking
methods. See thetkinter.tix module documentation for additional
information on the Form g
4000
eometry manager
pack为构造控件地理的函数。我们可以先跳过。
我们现在要做的事情是构造出来界面和我们的timerNote相关联。
我们先试着做一个start和stop控件,然后去寻找一个可以输入数字或者字符串等的控件。
class Application(tk.Frame): def __init__(self,master=None): tk.Frame.__init__(self,master) self.pack() self.createWidgets() def createWidgets(self): self.start=tk.Button(self) self.start["text"]="start" self.start["command"]=self.start self.start.pack(side="top") self.end=tk.Button(self,text="end",fg="red",command=self.end) self.end.pack(side="bottom") def start(self): print("start button clicked!") def end(self): print("end button clicked!") root=tk.Tk() app=Application(master=root) app.mainloop()
可以触发两个按钮的程序,在此发现点击start不起作用,查询。。。
csdn论坛询问,原来是粗心 变量名和函数名一样了
end起作用是因为在end变量初始化在end函数之后
更正后的代码:
class Application(tk.Frame): def __init__(self,master=None): tk.Frame.__init__(self,master) self.pack() self.createWidgets() def createWidgets(self): self.end=tk.Button(self,text="end",fg="red",command=self.cbend) self.end.pack(side="bottom") self.start=tk.Button(self) self.start["text"]="start" self.start["command"]=self.cbstart self.start.pack(side="top") def cbstart(self): print("start button clicked!") def cbend(self): print("end button clicked!") root=tk.Tk() app=Application(master=root) app.mainloop()
现在两个按键都可以使用了
相关文章推荐
- python实战教程1 定时提醒程序的制作(1)
- python实战教程1 定时提醒程序的制作(3)
- 微信小程序教学第三章(含视频):小程序中级实战教程:列表-静态页面制作
- Qt制作定时提醒程序1
- 微信小程序教学第四章第一节(含视频):小程序中级实战教程:详情-页面制作
- 微信小程序教学第四章第一节(含视频):小程序中级实战教程:详情-页面制作
- 用Python制作简单的钢琴程序的教程
- 用python写一个定时提醒程序
- 微信小程序教学第三章(含视频):小程序中级实战教程:列表-静态页面制作
- 操作Windows注册表的简单的Python程序制作教程
- python机器学习及实战代码13-16,程序运行时出现提醒及修改
- 用Python制作简单的钢琴程序的教程
- 利用python制作在Linux服务器后台定时运行的任务-邮件提醒
- 个性化WinPE封装方法 ----最后实战“制作WinPE3.0图文教程”
- 如何用python制作一个锻炼计算能力的exe小程序-学习笔记11-pyinstaller
- 从DOS 命令到制作IMG映像的详细解说实战教程
- 使用Python发送邮件附件以定时备份MySQL的教程
- Unity3d 游戏特效制作实战教程 第二部
- 安卓Android ROM定制、移植,安卓软件反编译、汉化实战教程第七篇:ROM单刷包的制作即刷机语法
- [教程] React Native基础实战(1)—— 制作一个简单的按钮