python GUI编程

最近开始由于项目需要开始接触python,感触良多,python是一种十分精简的语言,既符合面向对象,又有很多开源的库可以借鉴,非常的方便

下面我这里讲一下python GUI编程,当然这是最简单的了:

一,环境配置

安装python 环境:sudo apt-get install python
安装下面几个wx库:
sudo apt-get install python-wxgtk2.8 python-wxtools wx2.8-i18n
就这样简单的几句话我们就可以编写基本的带有UI界面的应用程序了,
如果想操作i2c等硬件python也是给我们做好了最基本的库了:

本帖最后由 jinpeng 于 2016-2-2 15:46 编辑

安装python 环境:sudo apt-get install python
安装下面几个wx库:
sudo apt-get install python-wxgtk2.8 python-wxtools wx2.8-i18n

说明:这个是python UI编程库的一种,有兴趣的可以安装其他类似的库,比如:Tkinter ,Pyqt等
我们这里只是讲解使用wx模块最基本的部分,如果安装这几个库之后需要做更深入的开发,可以搜索其他的库

如果需要通过python操作i2c或者serial等可以安装下面这几个库:
sudo apt-get install python-pip git libi2c-dev python-serial i2c-tools python-smbus

二,例子
#filename:helloworld.py
import wx

class MainPanel(wx.Panel):
        """"""
        #----------------------------------------------------------------------
        def __init__(self, parent):
                """Constructor"""
                wx.Panel.__init__(self, parent=parent)
                #self.SetBackgroundStyle(wx.BG_STYLE_CUSTOM)
                self.frame = parent

                sizer = wx.BoxSizer(wx.VERTICAL)
                hSizer = wx.BoxSizer(wx.HORIZONTAL)


                button_hello = wx.Button(self, label="hello", pos=(25,110))
                button_hello.Bind(wx.EVT_BUTTON, self.button_hello)
                value_text = wx.TextCtrl(self,-1,'say:',size=(150,30),pos=(140,110))
                self.value_text=value_text

        def button_hello(self, event):
                        self.value_text.AppendText("Hello World!")

class MainFrame(wx.Frame):

        def __init__(self):
                """Constructor"""
                wx.Frame.__init__(self, None, title="Hello world", size=(400,300))                # Set the fram size
                panel = MainPanel(self)        
                self.Center()

class Main(wx.App):

    def __init__(self, redirect=False, filename=None):
        """ this is the UI Constructor"""
        wx.App.__init__(self, redirect, filename)
        dlg = MainFrame()
        dlg.Show()

if __name__ == "__main__":
        app = Main()
        app.MainLoop()

在shell终端运行:sudo python helloworld.py
运行效果:点击hello按钮提示say Hello world!
效果图

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值