用Python开发GUI程序

1.Tkinter


Tkinter是python发行版自带的一个跨平台的图形界面开发工具包,Tkinter封装了TK图形库,Tkinter程序可以运行在Windows、Linux、Mac上面而不用做任何修改,在Python中开发Tkinter程序也很简单,下面就是一个简单的Hello world程序
import Tkinter #import Tkinter module

root = Tkinter.Tk() # create the root window
w = Tkinter.Label(root, text="Hello, world!") # create the Label widget
w.pack() # make above label visiable and pack it to the size of its content
root.mainloop()
# Create the event loop

我们可以在http://www.pythonware.com/library/tkinter/introduction/找到Tkinter的教程

2.wxPython


wxPython是另外一个跨平台的图形库,和Tkinter类似,wxPython程序可以不用任何修改就可以运行在Windows、Linux、Mac上面,wxPython底层封装了跨平台的图形库wxWidgets(以前叫做wxWindows),由于wxWidgets是由C++开发出来的,这就决定了wxPython的性能要比Tkinter强。使用wxPython之前,需要到http://www.wxpython.org下载一个和你的操作系统和python版本一致的wxPython runtime,下载之后,运行下面命令安装wxPython

python setup.py install

之后我们就可以用wxPython来开发GUI程序了,下面代码演示了如何编程

import wxPython,wx # import required wxPython module

class MyFrame(wx.Frame):
    def __init__(self, parent, id, title):
        wx.Frame.__init__(self, parent, id, title)
        self.Bind(wx.EVT_MOVE, self.OnMove)# Add event handler to moving event
        self.Bind(wx.EVT_SIZE, self.OnSize)
# Add event handler to sizing event

    def OnSize(self, event):#event handler to sizing event
        size = event.GetSize()
        print "size:", size.width, size.height

    def OnMove(self, event):#event handler to moving event
        pos = event.GetPosition()
        print "pos:", pos.x, pos.y

class MyApp(wx.App):
    def OnInit(self):
        frame = MyFrame(None, -1, "This is a test")
        frame.Show(True)# make frame visiable
        return True

def main():
    app = MyApp(0)
    app.MainLoop()
# create event loop

if __name__ == "__main__":
    main()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
# -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'aaa.ui' # # Created by: PyQt5 UI code generator 5.11.3 # # WARNING! All changes made in this file will be lost! import sys, os from PyQt5 import QtCore, QtWidgets, QtGui from PyQt5.QtCore import * from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5 import QtCore, QtGui, QtWidgets class U_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(1204, 836) sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) sizePolicy.setHorizontalStretch(0) sizePolicy.setVerticalStretch(0) sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth()) MainWindow.setSizePolicy(sizePolicy) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.tableWidget = QtWidgets.QTableWidget(self.centralwidget) self.tableWidget.setGeometry(QtCore.QRect(80, 240, 1041, 371)) self.tableWidget.setAutoScrollMargin(9) self.tableWidget.setRowCount(9) self.tableWidget.setColumnCount(8) self.tableWidget.setObjectName("tableWidget") item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(0, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(1, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(2, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(3, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(4, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(5, item) item = QtWidgets.QTableWidgetItem() self.tableWidget.setVerticalHeaderItem(6, item) item = Q

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值