如何在 wxPython ComboBox 中存储字符串以外的对象?

2023-12-28

我有一个 Vertex 对象列表,每个对象都有自己的标签和 ID。我如何使用这个列表作为 wxPython ComboBox 的模型,以便当用户选择一个选项时,我可以立即检索顶点 id?

看来 ComboBox 只接受字符串作为模型。我无法创建标签到 id 对的字典,因为存在重复的标签。

我注意到一个 ComboCtrl 类,我可以将其子类化以创建专门的组合框,但我觉得有一个更简单的解决方案。


今天早些时候,这个主题出现在 wxPython IRC 频道上,但是是关于 ListBox 的。幸运的是,这两个小部件都继承自 wx.ItemContainer,因此您可以执行以下操作:

for item in ObjList:
    self.myCboBox.append(item.label, item)

然后在事件处理程序中,您将执行以下操作:

itemObject = self.myCboBox.GetClientData(self.myCboBox.GetSelection())
itemID = itemObject.id

那应该有效。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 wxPython ComboBox 中存储字符串以外的对象? 的相关文章

  • 从数据框中按索引删除行

    我有一个数组wrong indexes train其中包含我想从数据框中删除的索引列表 0 63 151 469 1008 要删除这些索引 我正在尝试这样做 df train drop wrong indexes train 但是 代码失败
  • 使用 python 进行串行数据记录

    Intro 我需要编写一个小程序来实时读取串行数据并将其写入文本文件 我在读取数据方面取得了一些进展 但尚未成功地将这些信息存储在新文件中 这是我的代码 from future import print function import se
  • python future 和元组解包

    实现像使用 future 进行元组解包这样的事情的优雅 惯用的方法是什么 我有这样的代码 a b c f x y g a b z h y c 我想将其转换为使用期货 理想情况下我想写一些类似的东西 a b c ex submit f x y
  • 我怎样才能更多地了解Python的内部原理? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我使用Python编程已经有半年多了 我对Python内部更感兴趣 而不是使用Python开发应用程序
  • 如何迭代按值排序的 Python 字典?

    我有一本字典 比如 a 6 b 1 c 2 我想迭代一下by value 不是通过键 换句话说 b 1 c 2 a 6 最直接的方法是什么 sorted dictionary items key lambda x x 1 对于那些讨厌 la
  • 如何使用 Plotly 中的直方图将所有离群值分入一个分箱?

    所以问题是 我可以在 Plotly 中绘制直方图 其中所有大于某个阈值的值都将被分组到一个箱中吗 所需的输出 但使用标准情节Histogram类我只能得到这个输出 import pandas as pd from plotly import
  • 如何使用 imaplib 获取“消息 ID”

    我尝试获取一个在操作期间不会更改的唯一 ID 我觉得UID不好 所以我认为 Message ID 是正确的 但我不知道如何获取它 我只知道 imap fetch uid XXXX 有人有解决方案吗 来自 IMAP 文档本身 IMAP4消息号
  • 在 Python distutils 中从 setup.py 查找脚本目录的正确方法?

    我正在分发一个具有以下结构的包 mymodule mymodule init py mymodule code py scripts script1 py scripts script2 py The mymodule的子目录mymodul
  • 填充两个函数之间的区域

    import matplotlib pyplot as plt import numpy as np def domain x np arange 0 10 0 001 f1 lambda x 2 x x 2 0 5 plt plot x
  • 为什么Python的curses中escape键有延迟?

    In the Python curses module I have observed that there is a roughly 1 second delay between pressing the esc key and getc
  • 如何设置 Celery 来调用自定义工作器初始化?

    我对 Celery 很陌生 我一直在尝试设置一个具有 2 个独立队列的项目 一个用于计算 另一个用于执行 到目前为止 一切都很好 我的问题是执行队列中的工作人员需要实例化一个具有唯一 object id 的类 每个工作人员一个 id 我想知
  • 首先对列表中最长的项目进行排序

    我正在使用 lambda 来修改排序的行为 sorted list key lambda item item lower len item 对包含元素的列表进行排序A1 A2 A3 A B1 B2 B3 B 结果是A A1 A2 A3 B
  • 创建嵌套字典单行

    您好 我有三个列表 我想使用一行创建一个三级嵌套字典 i e l1 a b l2 1 2 3 l3 d e 我想创建以下嵌套字典 nd a 1 d 0 e 0 2 d 0 e 0 3 d 0 e 0 b a 1 d 0 e 0 2 d 0
  • 使用 NumPy 将非均匀数据从文件读取到数组中

    假设我有一个如下所示的文本文件 33 346 1223 10 23 11 23 12 23 13 23 14 23 15 23 16 24 10 24 11 24 12 24 13 24 14 24 15 24 16 25 14 25 15
  • 使用yield 进行字典理解

    作为一个人为的例子 myset set a b c d mydict item yield join item s for item in myset and list mydict gives as cs bs ds a None b N
  • Ubuntu 上的 Python 2.7

    我是 Python 新手 正在 Linux 机器 Ubuntu 10 10 上工作 它正在运行 python 2 6 但我想运行 2 7 因为它有我想使用的功能 有人敦促我不要安装 2 7 并将其设置为我的默认 python 我的问题是 如
  • 限制 django 应用程序模型中的单个记录?

    我想使用模型来保存 django 应用程序的系统设置 因此 我想限制该模型 使其只能有一条记录 极限怎么办 尝试这个 class MyModel models Model onefield models CharField The fiel
  • 具有自定义值的 Django 管理外键下拉列表

    我有 3 个 Django 模型 class Test models Model pass class Page models Model test models ForeignKey Test class Question model M
  • 字典和数组作为类变量与实例变量

    这是赚取积分的简单方法 请解释以下内容 class C a b 0 c def init self self x def d self k v self x k v self a k v self b v self c append v d
  • 检查字典键是否有空值

    我有以下字典 dict1 city name yass region zipcode phone address tehsil planet mars 我正在尝试创建一个基于 dict1 的新字典 但是 它不会包含带有空字符串的键 它不会包

随机推荐

  • 我的 C 程序读取一个文本文件。当我将它放入 Xcode 时,它​​失败了。发生了什么?

    我有一个打开 txt 的函数 使用 fscanf 读取格式如下的数字 532 2 234 32 当我使用 GCC 编译时它成功地做到了这一点 但我无法在 Xcode 中打开文件 为什么 相关代码是 int main void FILE in
  • 如何禁用 WinForms DataGrid 中的按钮单元格?

    我有一个 WinForms 应用程序 其中包含一个 DataGridView 控件和一列 DataGridViewButtonCell 单元格 当我单击其中一个按钮时 它会启动一项后台任务 我想禁用这些按钮 直到该任务完成 我可以禁用 Da
  • Gekko 长期性能

    在下面的代码中 全年 PV 斜率优化 每小时时间步长 CSV 数据下载link https drive google com file d 172HaD87t9V PDElMER4MwDaWyuCZ3KA5 view usp sharing
  • 如何在使用rescue_from时使用Rails4和RSpec测试渲染状态:404

    我有一个带有 PagesController 的 Rails4 应用程序 当找不到页面时 show method 会抛出自定义异常 PageNotFoundError 在我定义的控制器之上rescue from PageNotFoundEr
  • 转换输出中不需要的字符编码转换

    我这里有一个情况 JAVA版本1 6 Linux RH 5 6 Tikanga Windows 7 Cygwin最新版本 等级 1 6 在一台机器 Linux 上 当我运行 Gradle 构建时 我得到生成的 xsl 文件 这些文件与我运行
  • iOS:Objective-C 中的事件监听器相当于什么?

    在我的一些学习中 我看到有人提到 在视图控制器中 您可以拥有一个模型 并在模型上有某种监听器来监听其中的变化 我认为我没有使用正确的名称 这可能就是为什么我的搜索没有找到任何结果的原因 本质上 我想将服务器调用从控制器移到我的模型中 但我需
  • 使用 Netty 的多线程 UDP 服务器

    我正在尝试使用 Netty 实现 UDP 服务器 这个想法是只绑定一次 因此只创建一个Channel This Channel仅使用一个处理程序进行初始化 该处理程序通过一个线程在多个线程之间分派传入数据报的处理ExecutorServic
  • Google Drive API 使用浏览器版本创建空的“无标题”文件

    我正在尝试使用 Google Drive API 的 浏览器 版本 它似乎主要遵循 Nodejs 语法 但除了浏览器的第一个 hello world 示例之外 似乎没有太多示例 现在我正在尝试创建一个文件夹 然后在该文件夹内创建一个简单的
  • 当任务计划程序启动时隐藏 C# 控制台应用程序窗口

    我已经在谷歌上搜索了这个并阅读了一些资源 但我无法找到一个好的答案 有谁知道如何防止控制台应用程序窗口在任务计划程序启动时打开 Ref 改变output type to Windows application会解决你的问题 转到 项目 gt
  • 从 XAML 中的 *.resx 文件获取值

    是否可以将资源文件中的某些值直接添加到 XAML 标记中 或者为了本地化 我们总是必须在 cs 文件中制作类似的内容 txtMessage Text Messages WarningUserMessage Where Messages是资源
  • Python、Pandas:使用 GroupBy.groups 描述将其应用于另一个分组

    让我们考虑一个 DataFrame 它在 2010 年 1 月的每一天包含 1 行 2 个值 date range pd date range dt 2010 1 1 dt 2010 1 31 freq 1D df pd DataFrame
  • 如何从 DQL 查询返回对象?

    我在原则 2 中编写了一个 DQL 查询 qb gt select r position gt from Entities Races r gt where qb gt expr gt eq r entrantId entrant id g
  • 如何使用 GraphicsPath 绘制形状来创建自定义控件的区域?

    我目前正在尝试覆盖OnPaint 我正在构建的自定义控件的方法 该对象只是一个简单的面板 但我试图让它看起来不同类型的方式 如下所示 我正在使用 GraphicsPath 来帮助我尝试完成此任务 但它的外观 行为并不像我预期的那样工作 因为
  • Node.js Mongoose.js 字符串到 ObjectId 函数

    是否有一个函数可以使用 mongoose 将字符串转换为节点中的 objectId 架构指定某物是一个 ObjectId 但是当它从字符串保存时 mongo 告诉我它仍然只是一个字符串 例如 对象的 id 显示为objectId blah
  • ggraph的定制图例

    我想创建一个自定义图例 示例图例如下所示 这是我的情节 我使用 ggraph 创建了这个图 在这个情节下或在情节附近的某个地方我想要有我上面提到的图例 有任何想法吗 从技术上讲 您要求使用另一个图作为图例 因此 我们需要安排一个网格并将该图
  • 为 Facebook 对象 ID 而不是 URL 制作一个点赞按钮?

    Facebook点赞按钮上的文档 http developers facebook com docs reference plugins like 允许为 URL 创建 赞 按钮 然而 文档还表明根据对象 ID 记录点赞数 http dev
  • 为什么'int i = i;'合法的? [复制]

    这个问题在这里已经有答案了 可能的重复 int 变量 1 无效主 int i i https stackoverflow com questions 3173462 int var 1 void main int i i 下面的代码在g 和
  • 可以在 ARM 模板中执行嵌套复制循环吗?

    我正在尝试动态生成路径映射 以将传入流量路由到应用程序网关的正确后端池 例如 我们有 20 个租户 每个后端池允许 5 个租户 这意味着我们将生成 4 个后端池 我需要动态创建路径映射 以便后端池一为租户 1 5 提供服务 后端池二为租户
  • MVC4 应用程序中未加载图像、CSS 和 JS

    我刚刚将一个新的 MVC4 应用程序部署到我的服务器 但某些 CSS JS 和图像未加载 例如 Chrome 控制台显示 加载资源失败 服务器响应状态为500 内部服务器错误 http beta vinformative com Conte
  • 如何在 wxPython ComboBox 中存储字符串以外的对象?

    我有一个 Vertex 对象列表 每个对象都有自己的标签和 ID 我如何使用这个列表作为 wxPython ComboBox 的模型 以便当用户选择一个选项时 我可以立即检索顶点 id 看来 ComboBox 只接受字符串作为模型 我无法创