Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
相当于wxPython中的HTML多选择框_Python_Wxpython - Fatal编程技术网

相当于wxPython中的HTML多选择框

相当于wxPython中的HTML多选择框,python,wxpython,Python,Wxpython,我想在wxPython中创建一个ListBox,其语义与HTML中的multipleselect框相同。具体来说,我想要以下语义 当用户单击列表中的某个条目时,所有其他条目都将被取消选中,单击的条目将被选中。如果条目已被选中,则它将保持选中状态 当用户在单击某个条目时按住Ctrl键时,所有其他条目保持不变,但它会切换是否选中单击的条目 当用户按住shift键并单击某个条目时,该条目及其与上次单击的条目之间的每个条目都将被选中 在Java中,我通过在Swing中使用JList类并将选择模式设置

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

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

在Java中,我通过在Swing中使用
JList
类并将选择模式设置为
MULTIPLE\u INTERVAL\u SELECTED
来实现这一点。我假设wxPython工具箱有一种方法可以做到这一点,但我不知道如何获得一个
列表框
列表Ctrl
或任何其他类来完成这一点,而不是自己进行大量的事件驱动编程。

我想你要找的是列表框样式。创建
列表框时指定
style=wx.LB_EXTENDED

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