首页 文章

如何控制QListWidget选择

提问于
浏览
0

我用QListWidget实现了一个弹出列表 . 但我发现当鼠标按下某个项目时,列表的选择就完成了 . 但我想要的是点击选择 . 我该怎么改变它? (没有代表)

更新:

我有一个QListWidget的子类 . 当我按住项目上的左按钮时,完成此列表的选择(发出信号,更改selectedItems(),更改Qss QListWidget :: item:selected {}等) . 我想要的是在项目上释放鼠标时进行这些更改,而不是按住它 .

1 回答

  • 0

    QListWidget具有setSelectionModesetSelectionBehaviour的功能 . 如果这不是你想要实现的目标 .

    响应问题的更新,您需要处理窗口小部件的鼠标事件,以防止在鼠标按下事件发生时选择(不调用基类函数),然后自己处理设置选择,作为响应鼠标释放事件 .

    由于QListWidget是一个带有内部模型的便利类,你最好使用QListView,它允许你操纵它的selection model .

    如果您决定这样做,请确保有充分的理由,因为用户希望列表窗口小部件以特定方式工作,并且更改此操作可能只会让用户烦恼 .

相关问题