wxPython中listbox用法实例详解

作者:不吃皮蛋 时间:2022-03-13 15:19:54 

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

标签:wxPython,listbox
0
投稿

猜你喜欢

  • vue实现图片懒加载的方法分析

    2024-04-27 16:10:29
  • 使用python的pandas库读取csv文件保存至mysql数据库

    2024-01-22 00:26:19
  • 基于python及pytorch中乘法的使用详解

    2022-08-07 09:26:59
  • Go语言映射内部实现及基础功能实战

    2024-04-27 15:39:30
  • python怎么删除缓存文件

    2022-01-02 03:49:01
  • js判断传入时间和当前时间大小实例(超简单)

    2024-05-02 17:26:40
  • 使用 JSON 进行数据传输

    2008-06-15 07:12:00
  • oracle 触发器 学习笔记

    2009-05-24 19:57:00
  • 基于pytorch的保存和加载模型参数的方法

    2023-02-07 00:24:12
  • python实现scrapy爬虫每天定时抓取数据的示例代码

    2022-05-04 22:33:18
  • 详解Go语言RESTful JSON API创建

    2024-04-26 17:34:17
  • Javascript学习笔记之数组的遍历和 length 属性

    2024-04-18 10:53:43
  • python使用Tkinter显示网络图片的方法

    2021-09-26 18:25:38
  • JS模拟实现哈希表及应用详解

    2024-04-23 09:25:52
  • Python3结合Dlib实现人脸识别和剪切

    2023-01-10 01:28:48
  • Python自定义线程池实现方法分析

    2021-12-17 09:13:10
  • Python编写简单的HTML页面合并脚本

    2022-08-13 09:13:07
  • 用python对oracle进行简单性能测试

    2021-07-08 16:51:59
  • python 批量将中文名转换为拼音

    2023-06-14 21:16:22
  • 聊聊golang中多个defer的执行顺序

    2023-09-03 09:23:22
  • asp之家 网络编程 m.aspxhome.com