3

我想在 wxPython 中创建一个与HTML 中ListBox的多个框具有相同语义的一个。select具体来说,我想要以下语义

  • 当用户单击列表中的一个条目时,所有其他条目都将取消选择,而单击的条目将变为选中状态。如果条目已被选中,则它保持选中状态。
  • 当用户在单击条目时按住 Ctrl 键时,所有其他条目保持不变,但它会切换是否选择了单击的条目。
  • 当用户按住 shift 并单击一个条目时,该条目以及它与最后单击的条目之间的每个条目都会被选中。

在 Java 中,我通过使用JListSwing 中的类并将选择模式设置为MULTIPLE_INTERVAL_SELECTED. 我假设有一种方法可以使用 wxPython 工具包来做到这一点,但是我不知道如何让一个ListBoxListCtrl任何其他类来做这件事,除非我自己做大量的事件驱动编程。

4

1 回答 1

3

我认为您正在寻找的是wxLB_EXTENDED列表框样式。指定style = wx.LB_EXTENDED何时创建ListBox.

然后,您可以使用该GetSelections方法获取所选项目的列表。

于 2008-12-12T19:49:51.507 回答