【问题标题】:How to close QComboBox editor in delegate when user chooses item用户选择项目时如何在委托中关闭 QComboBox 编辑器
【发布时间】:2014-09-01 11:36:59
【问题描述】:

我有 QStyledDelegate,它在 createEditor() 方法中创建 QComboBox 编辑器。仅当用户选择列表中的项目并按 Enter 键时,编辑器才会关闭。我希望仅当用户选择该项目时才关闭编辑器。如何做到这一点?

我尝试使用 QComboBox 的 currentIndexChanged() 信号,但即使用户只是单击表格单元格查看编辑器,它也会发出。

【问题讨论】:

  • 你试过activated()信号吗?

标签: qt qcombobox qstyleditemdelegate


【解决方案1】:

您需要将QComboBox::currentIndexChanged 信号连接到您的委托中的一个插槽。在插槽内,您应该发出closeEditor 信号。

初始currentIndexChanged 信号发射很可能是由您在创建后设置当前索引引起的。只需将连接语句放在组合框的设置值下方即可。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-26
    • 1970-01-01
    • 2014-01-11
    • 2012-03-29
    • 2011-01-28
    • 2019-11-05
    相关资源
    最近更新 更多