Qt Designer.ui到.py的转换不支持combobox的currentindexchange事件

2024-10-04 09:23:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我第一次在QT Designer上工作。我创建了一个组合框,其中包含a.b.c.dp.q.r.s的IP地址值。我使用pyuic4工具将在QT Designer中创建的.ui文件转换为.py文件,以便它可以在我正在Visual Studio中开发的Python项目中使用。你知道吗

现在,当我运行我的Python项目时,表单被正确打开,但是在combobox/dropdown中选择任何值时,它不会在顶部显示所选的值,尽管当我再次单击dropdown查看完整列表时,它会将值显示为selected/highlighted。Python代码似乎不包含currentIndexChanged属性。你知道吗

这平常吗?我必须手动编写这样一个基本功能的代码吗?你知道吗

我尝试使用下面的代码手动编写,但似乎也不起作用:

self.IPAddress_comboBox.currentIndexChanged['QString'].connect(self.handleChanged)

def handleChanged(self, text):
 index= self.IPAddress_comboBox.findText(text,QtCore.Qt.MatchFixedString) 
 if index >=0:
   self.IPAddress_comboBox.setCurrentIndex(index)

Combobox with selected value as 10.200.25.11 but displayed value is 10.200.25.10

在这里,我选择了值10.200.25.11,它显示为高亮显示,但当下拉列表关闭时,它会在顶部显示10.200.25.10。(使用qt designer时,预览工作正常)


Tags: 文件项目代码textself列表index手动
1条回答
网友
1楼 · 发布于 2024-10-04 09:23:05

信号参数类型QString周围不应有引号:

self.IPAddress_comboBox.currentIndexChanged[QString].connect(self.handleChanged)

我不知道为什么您的组合框没有在顶部显示所选的值;这个功能对我很有用。如果你能provide an example,那可能会有帮助。你知道吗

相关问题 更多 >