WxPython建立批量录入框窗口


Posted in Python onFebruary 27, 2019

有个小项目,碰到需要批量建立输入框的需求,本文利用WxPython建立批量录入框窗口

研究了一下WxPython ,实现了这个功能。

# coding=utf-8
"""
模块标题:界面相关
模块功能:显示批量录入框窗口。
开发人员:seakingx
建立时间:2018.04.28
最后修改:2018.04.29
"""
 
import wx
 
class GUIFrame(wx.Frame):
  def __init__(self,app_title,app_size,input_num):
    self.max_len = input_num
    wx.Frame.__init__(self, None, -1, app_title, size=(app_size[0], app_size[1]))
    panel = wx.Panel(self, -1)
    # 按钮显示文字
    self.loadButton = wx.Button(panel, label=u"处理数据")
    # 显示批量输入框
 
    self.hbox = wx.BoxSizer()
    self.hbox.Add(self.loadButton, proportion=0, flag=wx.LEFT, border=5)
    self.vbox = wx.BoxSizer(wx.VERTICAL)
    self.vbox.Add(self.hbox, proportion=0, flag=wx.EXPAND | wx.ALL, border=5)
    self.max_line = self.max_len
    self.max_row = self.max_len
    self.input_matrix = []
 
    self.init_inputbox(panel)
    panel.SetSizer(self.vbox)
 
    self.loadButton.Bind(wx.EVT_BUTTON, self.OnLoad, self.loadButton)
 
 
  def init_inputbox(self,panel):
    input_box_i = wx.BoxSizer()
    input_label = wx.StaticText(panel, label=" ", size=(20, 20), style=wx.ALIGN_LEFT)
    input_box_i.Add(input_label, proportion=0, flag=wx.LEFT, border=3)
    for i in range(self.max_line):
      input_item = wx.StaticText(panel, label=str(i+1), size=(50, 20), style=wx.ALIGN_CENTER)
      input_box_i.Add(input_item, proportion=0, flag=wx.LEFT, border=3)
 
    self.vbox.Add(input_box_i, proportion=0, flag=wx.EXPAND | wx.ALL, border=1)
    for j in range(self.max_row):
      input_box_i = wx.BoxSizer()
      input_list = []
      input_label = wx.StaticText(panel, label=str(j + 1), size=(20, 25), style=wx.ALIGN_LEFT)
      input_box_i.Add(input_label, proportion=0, flag=wx.LEFT, border=3)
      for i in range(self.max_line):
 
        input_item = wx.TextCtrl(panel,size=(50,25))
        input_box_i.Add(input_item, proportion=0, flag=wx.LEFT, border=3)
        input_list.append(input_item)
 
      self.vbox.Add(input_box_i, proportion=0, flag=wx.EXPAND | wx.ALL, border=1)
      self.input_matrix.append(input_list)
 
 
  def OnLoad(self,event):
    self.showMsg(u"开始处理", u"提示")
 
  def showMsg(self,msg,title):
    wx.MessageBox(msg, title, wx.OK | wx.ICON_INFORMATION)
 
 
if __name__ == '__main__':
  # 界面提示文字
  show_info = u"数据处理工具"
  app = wx.App()
  # 建立一个10*10的录入窗口
  frame = GUIFrame(show_info, [800, 450],10)
  frame.Show()
  app.MainLoop()

如果输入项目更多, 可能用GRID更合适。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python常规方法实现数组的全排列
Mar 17 Python
Python使用matplotlib绘制动画的方法
May 20 Python
基python实现多线程网页爬虫
Sep 06 Python
简单谈谈Python流程控制语句
Dec 04 Python
Python使用Selenium模块模拟浏览器抓取斗鱼直播间信息示例
Jul 18 Python
python爬虫爬取微博评论案例详解
Mar 27 Python
python面向对象法实现图书管理系统
Apr 19 Python
基于python实现微信好友数据分析(简单)
Feb 16 Python
使用keras2.0 将Merge层改为函数式
May 23 Python
python 中的9个实用技巧,助你提高开发效率
Aug 30 Python
Python 转移文件至云对象存储的方法
Feb 07 Python
python爬不同图片分别保存在不同文件夹中的实现
Apr 02 Python
Python里字典的基本用法(包括嵌套字典)
Feb 27 #Python
Python中类的创建和实例化操作示例
Feb 27 #Python
Python中使用遍历在列表中添加字典遇到的坑
Feb 27 #Python
Python实现定期检查源目录与备份目录的差异并进行备份功能示例
Feb 27 #Python
详解Django-restframework 之频率源码分析
Feb 27 #Python
Python的UTC时间转换讲解
Feb 26 #Python
Python逐行读取文件中内容的简单方法
Feb 26 #Python
You might like
使用PHP和JavaScript判断请求是否来自微信内浏览器
2015/08/18 PHP
PHP水印类,支持添加图片、文字、填充颜色区域的实现
2017/02/04 PHP
php通过header发送自定义数据方法
2018/01/18 PHP
JScript中的undefined和"undefined"的区别
2007/03/08 Javascript
js查错流程归纳
2012/05/04 Javascript
jquery中.add()的使用分析
2013/04/26 Javascript
JS比较两个时间大小的简单示例代码
2013/12/20 Javascript
js实现的map方法示例代码
2014/01/13 Javascript
Jquery中扩展方法extend使用技巧
2014/08/24 Javascript
node.js中的fs.close方法使用说明
2014/12/17 Javascript
流量统计器如何鉴别C#:WebBrowser中伪造referer
2015/01/07 Javascript
javascript中setAttribute()函数使用方法及兼容性
2015/07/19 Javascript
nodeJs爬虫获取数据简单实现代码
2016/03/29 NodeJs
JS实现仿饿了么在浏览器标签页失去焦点时网页Title改变
2017/06/01 Javascript
Angularjs Ng_repeat中实现复选框选中并显示不同的样式方法
2018/09/12 Javascript
微信小程序文章详情页跳转案例详解
2019/07/09 Javascript
Vue开发环境中修改端口号的实现方法
2019/08/15 Javascript
[03:04]DOTA2英雄基础教程 影魔
2013/12/11 DOTA
[15:56]Heroes18_暗影萨满(完美)
2014/10/31 DOTA
python实现列表的排序方法分享
2019/07/01 Python
详解css position 5种不同的值的用法
2019/07/30 HTML / CSS
Sephora丝芙兰澳洲官方网站:国际知名化妆品购物
2016/10/27 全球购物
草莓网化妆品日本站:Strawberrynet日本
2017/10/20 全球购物
Sephora丝芙兰印尼官方网站:购买化妆品和护肤品
2018/07/02 全球购物
高性能装备提升营地:Kammok
2019/02/27 全球购物
美国购买体育赛事门票网站:TicketCity
2019/03/06 全球购物
梅西百货官网:Macy’s
2020/08/04 全球购物
大学生物业管理求职信
2013/10/24 职场文书
高中地理教学反思
2014/01/29 职场文书
小学秋季运动会报道稿
2014/09/30 职场文书
2015年政务公开工作总结
2015/05/19 职场文书
孕妇病假条怎么写
2015/08/17 职场文书
关于感恩的素材句子(38句)
2019/11/11 职场文书
CSS预处理框架——Stylus
2021/04/21 HTML / CSS
Python 正则模块详情
2021/11/02 Python
Tomcat弱口令复现及利用
2022/05/06 Servers