WxPython建立批量录入框窗口
程序员文章站
2023-11-30 11:01:52
有个小项目,碰到需要批量建立输入框的需求,本文利用wxpython建立批量录入框窗口
研究了一下wxpython ,实现了这个功能。
# coding=utf-...
有个小项目,碰到需要批量建立输入框的需求,本文利用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更合适。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: php统计文章排行示例
下一篇: ORACLE 回收站当前状态查询整理