Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.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
Qt 如何在用户选择项时关闭委托中的QComboBox编辑器_Qt_Qcombobox_Qstyleditemdelegate - Fatal编程技术网

Qt 如何在用户选择项时关闭委托中的QComboBox编辑器

Qt 如何在用户选择项时关闭委托中的QComboBox编辑器,qt,qcombobox,qstyleditemdelegate,Qt,Qcombobox,Qstyleditemdelegate,我有一个QStyledLegate,它在createEditor()方法中创建QComboBox编辑器。仅当用户选择列表中的项目并按Enter键时,编辑器才会关闭。我希望编辑器仅在用户选择项目时关闭。如何做到这一点 我尝试使用QComboBox的currentIndexChanged()信号,但即使用户只需单击表格单元格查看编辑器,它也会发出。您需要将QComboBox::currentIndexChanged信号连接到代理中的插槽。在插槽内部,您应该发出closeEditor信号 初始curr

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


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

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


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

您是否尝试过
激活()
信号?