• python写GUI


    图形用户界面

    本文利用wxpython

    wx包中的方法都是以大写的字幕开头

    import wx
    def load(event):
        file = open(filename.GetValue())
        contents.SetValue(file.read())
        file.close()
    def save(event):
        file = open(filename.GetValue(),'w')
        file.write(contents.GetValue())
        file.close()
    app = wx.App()
    win = wx.Frame(None, title = "Simple Editor", size = (410, 335))
    bkg = wx.Panel(win)
    
    loadBtn = wx.Button(bkg, label = "Open")
    loadBtn.Bind(wx.EVT_BUTTON, load)# 按钮绑定函数
    
    saveBtn = wx.Button(bkg, label = "Save")
    saveBtn.Bind(wx.EVT_BUTTON,save)
    
    filename = wx.TextCtrl(bkg)
    contents = wx.TextCtrl(bkg, style = wx.TE_MULTILINE|wx.HSCROLL)
    
    hbox = wx.BoxSizer()
    hbox.Add(filename, proportion = 1, flag = wx.EXPAND)
    hbox.Add(loadBtn, proportion = 0, flag = wx.LEFT, border = 5)
    hbox.Add(saveBtn, proportion = 0, flag = wx.LEFT, border = 5)
    
    vbox = wx.BoxSizer(wx.VERTICAL)
    vbox.Add(hbox, proportion = 0, flag = wx.EXPAND|wx.ALL, border = 5)
    vbox.Add(contents, proportion = 1, flag = wx.EXPAND|wx.LEFT|wx.BOTTOM|wx.RIGHT, border = 5)
    
    bkg.SetSizer(vbox)
    
    win.Show()
    app.MainLoop()
    

      

    wx.BoxSizer参数默认为水平,wx.VERTICAL是垂直。

    flag参数类似于style。wx.EXPAND标记组件会扩展到所分配的空间。wx.LEFT、wx.RIGHT、wx.TOP、wx.BOTTOM、wx.ALL对应于哪个边。

    proportion参数根据窗口改变大小时所分配的空间比例。 

  • 相关阅读:
    HarmonyOS 对象数据库
    springboot 整合/集成 jpa
    linux 安装docker和mysql
    HarmonyOS 多线程
    ElasticSearch 安装及配置 搭建集群
    java 集合
    HarmonyOS 基础数据库
    ElasticSearch 基本操作
    Windows驱动wdf驱动开发系列(一)
    32进程调用64dll的解决方法
  • 原文地址:https://www.cnblogs.com/lichunl/p/9463972.html
Copyright © 2020-2023  润新知