基于wxPython的GUI实现输入对话框(1)


Posted in Python onFebruary 27, 2019

本文实例为大家分享了基于wxPython的GUI实现输入对话框的具体代码,供大家参考,具体内容如下

编程时,免不了要输入一些参数等,这时输入对话框就派上用处了:

#-*- coding:utf-8 -*-
#~ #--------------------------------------------------------------------------------
#~ FileName=wxinputbox.py
#~ Funciton:wx的输入对话框
#~ author:吴徐平
#~ Date:2013-04-28
#~ Email:539688300@qq.com
#~ #--------------------------------------------------------------------------------
import wx
 
class TextEntryDialog(wx.Dialog):
 
 def __init__(self, parent=None, title='Title', caption='Caption',size=(500, 200)):
  '''
  #~ dialog = TextEntryDialog(parent=None, title=title,caption=caption,size=size)
  #~ dialog = TextEntryDialog()
  ''' 
  style = wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER
  super(TextEntryDialog, self).__init__(parent, -1, title=title, style=style)
  self.text = wx.StaticText(self, -1, caption)
  self.input = wx.TextCtrl(self, -1, style=wx.TE_MULTILINE)
  self.input.SetInitialSize(size)
  self.buttons = self.CreateButtonSizer(wx.OK|wx.CANCEL)
  self.sizer = wx.BoxSizer(wx.VERTICAL)
  self.sizer.Add(self.text, 0, wx.ALL, 5)
  self.sizer.Add(self.input, 1, wx.EXPAND|wx.ALL, 5)
  self.sizer.Add(self.buttons, 0, wx.EXPAND|wx.ALL, 5)
  self.SetSizerAndFit(self.sizer)
  self.Center()
 def SetValue(self, value):
  self.input.SetValue(value)
 def GetValue(self):
  return self.input.GetValue()
 
def wxinputbox(Initialstring='Initial String',title='Title',caption='Caption',size=(500,200)):
 '''
 #~ >>>stringvalue=wxinputbox(Initialstring='Initial String',title='Title',caption='Caption',size=(500,200)):
 #~ >>> stringvalue=wxinputbox()
 '''
 app = wx.PySimpleApp()
 #~ dialog = TextEntryDialog(None, title=title,caption=caption,size=size)
 dialog = TextEntryDialog()
 dialog.SetValue(Initialstring)
 if dialog.ShowModal() == wx.ID_OK:
  stringvalue= dialog.GetValue()
 else:
  stringvalue=''
  dialog.Destroy()
  app.MainLoop()
 return stringvalue
  
if __name__ == '__main__': 
 #~ #使用wx的输入对话框
 stringvalue=wxinputbox()
 print(stringvalue)
 
 
#~ if __name__ == '__main__':
 #~ app = wx.PySimpleApp()
 #~ #使用wx自带的输入对话框
 #~ dialog = wx.TextEntryDialog(None, 'Rules:', 'Edit rules',
 #~ style=wx.TE_MULTILINE|wx.OK|wx.CANCEL)
 #~ dialog.SetInitialSize((500,200))
 #~ if dialog.ShowModal() == wx.ID_OK:
  #~ print 'OK'
 #~ dialog.Destroy()
 #~ app.MainLoop()

效果如下:

基于wxPython的GUI实现输入对话框(1)

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

Python 相关文章推荐
zbar解码二维码和条形码示例
Feb 07 Python
Python中文编码那些事
Jun 25 Python
详解Python中for循环的使用
Apr 14 Python
基于MTCNN/TensorFlow实现人脸检测
May 24 Python
python实现植物大战僵尸游戏实例代码
Jun 10 Python
详解利用python+opencv识别图片中的圆形(霍夫变换)
Jul 01 Python
python函数的万能参数传参详解
Jul 26 Python
浅析Django中关于session的使用
Dec 30 Python
python3.7添加dlib模块的方法
Jul 01 Python
Python面向对象特殊属性及方法解析
Sep 16 Python
pandas数值排序的实现实例
Jul 25 Python
Python pandas求方差和标准差的方法实例
Aug 04 Python
Python使用字典的嵌套功能详解
Feb 27 #Python
Python list列表中删除多个重复元素操作示例
Feb 27 #Python
WxPython建立批量录入框窗口
Feb 27 #Python
Python里字典的基本用法(包括嵌套字典)
Feb 27 #Python
Python中类的创建和实例化操作示例
Feb 27 #Python
Python中使用遍历在列表中添加字典遇到的坑
Feb 27 #Python
Python实现定期检查源目录与备份目录的差异并进行备份功能示例
Feb 27 #Python
You might like
frename PHP 灵活文件命名函数 frename
2009/09/09 PHP
PHP的SQL注入实现(测试代码安全不错)
2011/02/27 PHP
php实现文章置顶功能的方法
2016/10/20 PHP
JQuery 前台切换网站的样式实现
2009/06/22 Javascript
JS验证控制输入中英文字节长度(input、textarea等)具体实例
2013/06/21 Javascript
深入理解jQuery中live与bind方法的区别
2013/12/18 Javascript
JS自调用匿名函数具体实现
2014/02/11 Javascript
js实现带圆角的多级下拉菜单效果
2015/08/28 Javascript
解决js页面滚动效果scrollTop在FireFox与Chrome浏览器间的兼容问题的方法
2015/12/03 Javascript
JQuery实现网页右侧随动广告特效
2016/01/17 Javascript
ThinkJS中如何使用MongoDB的CURD操作
2016/12/13 Javascript
jQuery使用正则验证15/18身份证的方法示例
2017/04/27 jQuery
javascript将json格式数组下载为excel表格的方法
2017/12/22 Javascript
vue.js在标签属性中插入变量参数的方法
2018/03/06 Javascript
jquery判断滚动条距离顶部的距离方法
2018/09/05 jQuery
基于Vue2实现简易的省市区县三级联动组件效果
2018/11/05 Javascript
laydate如何根据开始时间或者结束时间限制范围
2018/11/15 Javascript
跟老齐学Python之集成开发环境(IDE)
2014/09/12 Python
PyCharm在win10的64位系统安装实例
2017/11/26 Python
matplotlib绘图实例演示标记路径
2018/01/23 Python
在CMD命令行中运行python脚本的方法
2018/05/12 Python
python获取命令行输入参数列表的实例代码
2018/06/23 Python
Python之NumPy(axis=0 与axis=1)区分详解
2019/05/27 Python
使用python搭建服务器并实现Android端与之通信的方法
2019/06/28 Python
详解Python利用random生成一个列表内的随机数
2019/08/21 Python
python实现ftp文件传输系统(案例分析)
2020/03/20 Python
python实现Oracle查询分组的方法示例
2020/04/30 Python
详解使用postMessage解决iframe跨域通信问题
2019/11/01 HTML / CSS
美国家用和厨房电器销售网站:Appliances Connection
2020/01/24 全球购物
NOTINO英国:在线购买美容和香水
2020/02/25 全球购物
写一个方法1000的阶乘
2012/11/21 面试题
EJB与JAVA BEAN的区别
2016/08/29 面试题
社会学专业学生职业规划书
2014/02/07 职场文书
2014年校长工作总结
2014/12/11 职场文书
运动会800米赞词
2015/07/22 职场文书
2016年小学六一儿童节活动总结
2016/04/06 职场文书