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 相关文章推荐
使用70行Python代码实现一个递归下降解析器的教程
Apr 17 Python
使用python绘制常用的图表
Aug 27 Python
Python中标准模块importlib详解
Apr 16 Python
python3实现指定目录下文件sha256及文件大小统计
Feb 25 Python
python操作日志的封装方法(两种方法)
May 23 Python
基于python的Paxos算法实现
Jul 03 Python
深入了解Django View(视图系统)
Jul 23 Python
python字典的setdefault的巧妙用法
Aug 07 Python
vue常用指令代码实例总结
Mar 16 Python
零基础学python应该从哪里入手
Aug 11 Python
python 实现非极大值抑制算法(Non-maximum suppression, NMS)
Oct 15 Python
python 将Excel转Word的示例
Mar 02 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和MySQL保存和输出图片
2006/10/09 PHP
360通用php防护代码(使用操作详解)
2013/06/18 PHP
php加密算法之实现可逆加密算法和解密分享
2014/01/21 PHP
jquery中使用ajax获取远程页面信息
2011/11/13 Javascript
js下拉选择框与输入框联动实现添加选中值到输入框的方法
2015/08/17 Javascript
Node.js静态文件服务器改进版
2016/01/10 Javascript
javascript仿京东导航左侧分类导航下拉菜单效果
2020/11/25 Javascript
工厂模式在JS中的实践
2017/01/18 Javascript
vue2.0获取自定义属性的值
2017/03/28 Javascript
pm2 部署 node的三种方法示例
2017/10/20 Javascript
vue的无缝滚动组件vue-seamless-scroll实例
2017/12/18 Javascript
vue3.0 CLI - 2.6 - 组件的复用入门教程
2018/09/14 Javascript
NodeJS 将文件夹按照存放路径变成一个对应的JSON的方法
2018/10/17 NodeJs
详解vue更改头像功能实现
2019/04/28 Javascript
vue 微信分享回调iOS和安卓回调出现错误的解决
2020/09/07 Javascript
python对象及面向对象技术详解
2016/07/19 Python
Python如何实现文本转语音
2016/08/08 Python
python中ASCII码字符与int之间的转换方法
2018/07/09 Python
python画柱状图--不同颜色并显示数值的方法
2018/12/13 Python
django中ORM模型常用的字段的使用方法
2019/03/05 Python
python判断两个序列的成员是否一样的实例代码
2020/03/01 Python
Python性能分析工具py-spy原理用法解析
2020/07/27 Python
网易微博Web App用HTML5开发的过程介绍
2012/06/13 HTML / CSS
HTML5进阶段内联标签汇总(小篇)
2016/07/13 HTML / CSS
伊芙丽官方旗舰店:中国淑女一线品牌
2017/12/01 全球购物
Farfetch台湾官网:奢侈品牌时尚购物平台
2019/06/17 全球购物
几个数据库方面的面试题
2016/07/01 面试题
简历自我评价怎么写呢?
2014/01/06 职场文书
全陪导游欢迎词
2014/01/17 职场文书
小学美术教学反思
2014/02/01 职场文书
机工车间主任岗位职责
2014/03/05 职场文书
开展警示教育活动总结
2015/05/09 职场文书
公司老总年会致辞
2015/07/30 职场文书
2016年第十四个公民道德宣传日活动总
2016/04/01 职场文书
分析设计模式之模板方法Java实现
2021/06/23 Java/Android
Redis调用Lua脚本及使用场景快速掌握
2022/03/16 Redis