3

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

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

4

1 回答 1

4

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

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

于 2014-09-01T22:49:10.570 回答