wxPython中listbox用法实例详解

本文实例讲述了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程序设计有所帮助。

(0)

相关推荐

  • Python 列表list使用介绍

    一组有序项目的集合 可变的数据类型[可进行增删改查] 列表中可以包含任何数据类型,也可包含另一个列表[可任意组合嵌套] 列表是以方括号"[]"包围的数据集合,不同成员以","分隔 列表可通过序号访问其中成员 定义 >>> l = [] #空列表 >>> l = [1,2,3] >>> l = [1,2,3,['a','b']] >>> l = list('linuxeye') >>&

  • Python中list列表的一些进阶使用方法介绍

    判断一个 list 是否为空 传统的方式: if len(mylist): # Do something with my list else: # The list is empty 由于一个空 list 本身等同于 False,所以可以直接: if mylist: # Do something with my list else: # The list is empty 遍历 list 的同时获取索引 传统的方式: i = 0 for element in mylist: # Do somet

  • Python中实现对list做减法操作介绍

    问题描述:假设我有这样两个list, 一个是list1,list1 = [1, 2, 3, 4, 5]           一个是list2,list2 = [1, 4, 5]           我们如何得到一个新的list,list3,           list3中包括所有不在list2中出现的list1中的元素.           即:list3 = list1 – list2           解决方案:我们可以用set(集合)操作           list3 = list(

  • python开发之list操作实例分析

    本文实例分析了python开发之list操作.分享给大家供大家参考,具体如下: 对python中list的操作,大家可以参考<Python list操作用法总结> 以下是我个人的笔记: #python list ''' 创建list有很多方法: 1.使用一对方括号创建一个空的list:[] 2.使用一对方括号,用','隔开里面的元素:[a, b, c], [a] 3.Using a list comprehension:[x for x in iterable] 4.Using the typ

  • Python实现比较两个列表(list)范围

    有一道题: 比较两个列表范围,如果包含的话,返回TRUE,否则FALSE. 详细题目如下: Create a function, this function receives two lists as parameters, each list indicates a scope of numbers, the function judges whether list2 is included in list1. Function signature:     differ_scope(list

  • Python序列之list和tuple常用方法以及注意事项

    sequence 序列 sequence(序列)是一组有顺序的对象的集合.序列可以包含一个或多个元素,也可以没有任何元素. 我们之前所说的基本数据类型,都可以作为序列的对象.对象还可以是另一个序列.序列有两种:list (表) 和 tuple(元组) . list和tuple的主要区别在于,一旦建立,tuple的各个元素不可再变更,而list的各个元素可以再变更. List 获得list元素的个数: 复制代码 代码如下: >>> lst=['更新慢','python',5.44,Fals

  • Python中List.index()方法的使用教程

    index()方法返回obj出现在列表中最低位索引. 语法 以下是index()方法的语法: list.index(obj) 参数 obj -- 这是被找到的对象 返回值 此方法返回找到的对象的索引,否则抛出一个异常,表明没有找到对应值 例子 下面的例子显示了index()方法的使用 #!/usr/bin/python aList = [123, 'xyz', 'zara', 'abc']; print "Index for xyz : ", aList.index( 'xyz' )

  • Python列表(list)常用操作方法小结

    常见列表对象操作方法: list.append(x) 把一个元素添加到链表的结尾,相当于 a[len(a):] = [x] . list.extend(L) 将一个给定列表中的所有元素都添加到另一个列表中,相当于 a[len(a):] = L . list.insert(i, x) 在指定位置插入一个元素.第一个参数是准备插入到其前面的那个元素的索引,例如 a.insert(0, x) 会插入到整个链表之前,而 a.insert(len(a), x) 相当于 a.append(x) . list

  • python中list常用操作实例详解

    本文实例讲述了python中list常用操作.分享给大家供大家参考.具体分析如下: 1.定义list >>> li = ["a", "b", "mpilgrim", "z", "example"] >>> li ['a', 'b', 'mpilgrim', 'z', 'example'] >>> li[0] 'a' >>> li[4]

  • Python list操作用法总结

    本文实例讲述了Python list操作用法.分享给大家供大家参考,具体如下: List是python中的基本数据结构之一,和Java中的ArrayList有些类似,支持动态的元素的增加.list还支持不同类型的元素在一个列表中,List is an Object. 最基本的创建一个列表的方法 复制代码 代码如下: myList = ['a','b','c'] Python list常见操作如下: 创建列表 复制代码 代码如下: sample_list = ['a',1,('a','b')] P

随机推荐