用Python开发GUI程序

    技术2022-05-11  65

    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 windoww = Tkinter.Label(root, text="Hello, world!") # create the Label widgetw.pack() # make above label visiable and pack it to the size of its contentroot.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)