wxPython中listbox用法实例详解


Posted in Python onJune 01, 2015

本文实例讲述了wxPython中listbox用法。分享给大家供大家参考。具体如下:

# load a listbox with names, select a name and display in title
# experiments with wxPython by vegaseat 20mar2005
# Python v2.4 and wxPython v2.5
# If you have not already done so, install Python 2.4 first.
# I used python-2.4.1c2.msi (this is the self-extracting
# MS-Installer file) from http://www.python.org
# Then install wxPython2.5-win32-unicode-2.5.4.1-py24.exe
# from: http://prdownloads.sourceforge.net/wxpython/
# (if you don't get into unicode, download the ansi version)
# note: python-2.4.1c2.msi should soon be python-2.4.1.msi
import wx
def create(parent):
  return Frame1(parent)
# assign ID numbers
[wxID_FRAME1, wxID_FRAME1BUTTON1, wxID_FRAME1BUTTON2, wxID_FRAME1LISTBOX1, 
] = [wx.NewId() for _init_ctrls in range(4)]
class Frame1(wx.Frame):
  def _init_ctrls(self, prnt):
    # BOA generated methods
    wx.Frame.__init__(self, id=wxID_FRAME1, name='', parent=prnt,
       pos=wx.Point(358, 184), size=wx.Size(299, 387),
       style=wx.DEFAULT_FRAME_STYLE, title=u'ListBox Test ...')
    self.SetClientSize(wx.Size(291, 347))
    self.SetBackgroundColour(wx.Colour(0, 128, 0))
    self.button1 = wx.Button(id=wxID_FRAME1BUTTON1, label=u'Load ListBox',
       name='button1', parent=self, pos=wx.Point(8, 8), size=wx.Size(176,
       28), style=0)
    self.button1.Bind(wx.EVT_BUTTON, self.OnButton1Button,
       id=wxID_FRAME1BUTTON1)
    self.listBox1 = wx.ListBox(choices=[], id=wxID_FRAME1LISTBOX1,
       name='listBox1', parent=self, pos=wx.Point(8, 48),
       size=wx.Size(184, 256), style=0)
    self.listBox1.SetBackgroundColour(wx.Colour(255, 255, 128))
    self.listBox1.Bind(wx.EVT_LISTBOX, self.OnListBox1Listbox,
       id=wxID_FRAME1LISTBOX1)
    self.button2 = wx.Button(id=wxID_FRAME1BUTTON2, label=u'Clear',
       name='button2', parent=self, pos=wx.Point(104, 312),
       size=wx.Size(87, 28), style=0)
    self.button2.Bind(wx.EVT_BUTTON, self.OnButton2Button,
       id=wxID_FRAME1BUTTON2)
  def __init__(self, parent):
    self._init_ctrls(parent)
  def OnButton1Button(self, event):
    '''
    click button to load the listbox with names
    '''
    self.listBox1.Append("Andreas")
    self.listBox1.Append("Erich")
    self.listBox1.Append("Udo")
    self.listBox1.Append("Jens")
    self.listBox1.Append("Bjorn")
    self.listBox1.Append("Heidrun")
    self.listBox1.Append("Ulla")
    self.listBox1.Append("Volger")
    self.listBox1.Append("Helmut")
    self.listBox1.Append("Freja")
    self.SetTitle("Select a name ...")
  def OnListBox1Listbox(self, event):
    '''
    click list item and display the selected string in frame's title
    '''
    selName = self.listBox1.GetStringSelection()
    self.SetTitle(selName)
  def OnButton2Button(self, event):
    '''
    click button to clear the listbox items
    '''
    self.listBox1.Clear()
#--------------- end of class Frame1 --------------------
# program entry point ...
if __name__ == '__main__':
  app = wx.PySimpleApp()
  wx.InitAllImageHandlers()
  frame = create(None)
  frame.Show()
  app.MainLoop()

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python 运算符 供重载参考
Jun 11 Python
跟老齐学Python之print详解
Sep 28 Python
详解Python中映射类型(字典)操作符的概念和使用
Aug 19 Python
python 容器总结整理
Apr 04 Python
浅谈Django自定义模板标签template_tags的用处
Dec 20 Python
TensorFlow实现Softmax回归模型
Mar 09 Python
python使用Matplotlib绘制分段函数
Sep 25 Python
用Python实现BP神经网络(附代码)
Jul 10 Python
python 解决pycharm运行py文件只有unittest选项的问题
Sep 01 Python
用python爬虫批量下载pdf的实现
Dec 01 Python
深度学习小工程练习之垃圾分类详解
Apr 14 Python
Python matplotlib安装以及实现简单曲线的绘制
Apr 26 Python
在Python的Django框架下使用django-tagging的教程
May 30 #Python
使用url_helper简化Python中Django框架的url配置教程
May 30 #Python
在Python的Django框架中simple-todo工具的简单使用
May 30 #Python
Python中Django框架下的staticfiles使用简介
May 30 #Python
简单介绍Python的Django框架的dj-scaffold项目
May 30 #Python
Python的Django框架中settings文件的部署建议
May 30 #Python
Python的Django中django-userena组件的简单使用教程
May 30 #Python
You might like
PHP一些常用的正则表达式字符的一些转换
2008/07/29 PHP
PHP中FTP相关函数小结
2016/07/15 PHP
PHP7如何开启Opcode打造强悍性能详解
2018/05/11 PHP
基于Laravel-admin 后台的自定义页面用法详解
2019/09/30 PHP
js中的异常处理try...catch使用介绍
2013/09/21 Javascript
node.js中的fs.openSync方法使用说明
2014/12/17 Javascript
jQuery 实现侧边浮动导航菜单效果
2014/12/26 Javascript
JavaScript实现按照指定长度为数字前面补零输出的方法
2015/03/19 Javascript
详解JavaScript的策略模式编程
2015/06/24 Javascript
javascript实现类似于新浪微博搜索框弹出效果的方法
2015/07/27 Javascript
javascript跨域总结之window.name实现的跨域数据传输
2015/11/01 Javascript
使用jQuery获取data-的自定义属性
2015/11/10 Javascript
jQuery插件实现多级联动菜单效果
2015/12/01 Javascript
jQuery+css实现的换页标签栏效果
2016/01/27 Javascript
JSON键值对序列化和反序列化解析
2017/01/24 Javascript
jQuery实现的事件绑定功能基本示例
2017/10/11 jQuery
element ui 对话框el-dialog关闭事件详解
2018/02/26 Javascript
jQuery动态移除与增加onclick属性的方法详解
2018/06/07 jQuery
JS数组的常用10种方法详解
2020/05/08 Javascript
html-webpack-plugin修改页面的title的方法
2020/06/18 Javascript
python 写入csv乱码问题解决方法
2016/10/23 Python
分享给Python新手们的几道简单练习题
2017/09/21 Python
从CentOS安装完成到生成词云python的实例
2017/12/01 Python
使用python脚本自动创建pip.ini配置文件代码实例
2019/09/20 Python
python编写一个会算账的脚本的示例代码
2020/06/02 Python
Python ckeditor富文本编辑器代码实例解析
2020/06/22 Python
Python实现加密的RAR文件解压的方法(密码已知)
2020/09/11 Python
美国在线打印网站:Overnight Prints
2018/10/11 全球购物
世嘉游戏英国官方商店:SEGA Shop UK
2019/09/20 全球购物
电大学习个人自我评价范文
2013/10/04 职场文书
2014信息公开实施方案
2014/02/22 职场文书
临床医学专业求职信
2014/08/08 职场文书
领导班子作风建设剖析材料
2014/10/11 职场文书
带你学习MySQL执行计划
2021/05/31 MySQL
CSS实现渐变色边框(Gradient borders)的5种方法
2022/03/25 HTML / CSS
Win11怎么跳过联网验机 ?Win11跳过联网验机激活教程
2022/04/05 数码科技