python: GUI

用python开发GUI程序:


Tk:python的默认GUI工具集。

Tkinter: 是Tcl/Tk在python上的移植

Tix:Tk InterfaceeXtension,对Tk的扩展,包含在python标准库中了。

Pmw:Python MegaWidgets,对Tkinter的扩展,需要安装pip  install  Pmw.


下面是第三方库:

wxPython:wxWidgets是用C++实现的,有python和perl的接口。适合初学者。

PyGTK(GTK)

GNOME-Python(GNOME)

PyQt(Qt)

PyKDE(KDE)

...


开发GUI程序的过程:

1.导入模块:

2.创建一个顶层窗口对象来容纳整个GUI。

3.在顶层窗口对象上创建所有的GUI模块。

4.把这些GUI模块与底层程序代码连接。

5.进入时间主循环。


###############################################################################

Tkinter模块

###############################################################################

创建顶层窗口:


Tkinter.Tk类:

import  Tkinter

top\root = Tkinter.Tk()   #创建一个顶层窗口\根窗口


Tkinter.Tk,title方法:wm_title(self, string=None)

top.title('name')   #顶层窗口标题


Tkinter.Tk.quit方法:quit(self):

top.quit  #用quit方法退出顶层窗口


Tkinter.Tk.geometry方法:wm_geometry(self,newGeometry=None)

格式就是width X height + x + y.

top.geometry('250x150')   #设置窗口大小


###############################################################################

Tk的15种组件:都是Tkinter模块中的类


Label:标签

label = Label(top, text='hello world',font='Helvetica -12 bold')   #创建一个label

Tkinter.Label.config方法:configure(self,cnf=None, **kw)

label.config(font='helvetica -%d bold' %scale.get())   #重新调整label大小


Scale:进度条

scale = Scale(top, from_=10, to=40,orient=HORIZONTAL, command=resize)   #创建一个进度条

get(self)方法:

scale.get()   #获取当前scale值


Button:按钮

Canvas:画布

Checkbutton:选择按钮

Entry:文本框

Frame:框架

Listbox:列表框

Menu:菜单

Menubutton:菜单按钮

Message:消息框

Radiobutton:单选按钮

Scrollbar:滚动条

Text:文本域

Toplevel:顶级


###############################################################################

pack函数pack_configure(self,cnf={}, **kw)


   after=widget - pack it after you have packed widget

   anchor=NSEW (or subset) - position widget according to given direction

   before=widget - pack it before you will pack widget

   expand=bool - expand widget if parent size grows

   fill=NONE or X or Y or BOTH - fill widget if widget grows

   in=master - use master to contain this widget

   in_=master - see 'in' option description

   ipadx=amount - add internal padding in x direction

   ipady=amount - add internal padding in y direction

   padx=amount - add padding in x direction

   pady=amount - add padding in y direction

   side=TOP or BOTTOM or LEFT or RIGHT - where to add this widget.


classname.pack()   #显示这个类的控件


###############################################################################

进入时间主循环:


Tkinter.mainloop(n=0)函数:

Tkinter.mainloop()   #运行tcl的主循环。


其它模块的学习同理,先安装模块。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值