首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何获取QComboBox的当前文本内容?

如何获取QComboBox的当前文本内容?
EN

Stack Overflow用户
提问于 2011-05-20 00:37:25
回答 4查看 140.3K关注 0票数 41

使用pyqt4和Python2.6,我使用qcombobox来提供选项列表。我在使用所选选项时遇到问题。我已经能够在选择选项时使用信号来触发方法,但问题是,当用户单击run时,需要考虑其中几个组合框的内容。因此,基本上我需要以字符串的形式获取组合框中选定的内容。到目前为止,我只能使用以下代码:

代码语言:javascript
复制
print combobox1.currentText()

要获得以下信息:

代码语言:javascript
复制
PyQt4.QtCore.QString(u'Test Selection2')

当我真正想要的是“测试选择”时,有什么想法吗?我的组合框是这样制作的:

代码语言:javascript
复制
combobox1 = qt.QComboBox()
combobox1.addItems(['Test Selection1', 'Test Selection2'])
mainLayout.addWidget(combobox1, 0, 0)
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-05-20 02:09:20

只需使用str函数,就可以将QString类型转换为python字符串。假设您没有使用任何Unicode字符,您可以获得如下所示的python字符串:

代码语言:javascript
复制
text = str(combobox1.currentText())

如果使用任何unicode字符,则可以执行以下操作:

代码语言:javascript
复制
text = unicode(combobox1.currentText())
票数 85
EN

Stack Overflow用户

发布于 2015-04-14 21:59:08

可以强制PyQt4使用新的API,在该API中,QString将自动与Python对象相互转换:

代码语言:javascript
复制
import sip
sip.setapi('QString', 2)

使用此接口,QtCore.QString类将不再可用,self.ui.comboBox.currentText()将返回Python字符串或unicode对象。

请参阅文档中的Selecting Incompatible APIs

票数 4
EN

Stack Overflow用户

发布于 2012-03-15 00:12:28

在项目更改时获取ComboBox的文本

代码语言:javascript
复制
     self.ui.comboBox.activated.connect(self.pass_Net_Adap)

  def pass_Net_Adap(self):
      print str(self.ui.comboBox.currentText())
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6061893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档