在Qt中,我可以使用该
方法获得selected texta .我该怎么办?QComboBoxcombobox->currentText()selected value
我寻求帮助,但找不到currentData()我希望找到的方法.我只能找到combobox->currentIndex()
除了之外,还有更聪明的方法combobox->itemData(combobox->currentIndex())吗?
更新:从Qt 5开始不再需要了.currentData()已经添加了一个方法http://doc.qt.io/qt-5/qcombobox.html#currentData-prop
从预定义的enum基于唯一值的列表中选择QT组合框中的项目的最佳方法是什么.
在过去,我已经习惯了.NET的选择方式,可以通过将所选属性设置为您想要选择的项目值来选择项目:
cboExample.SelectedValue = 2;
Run Code Online (Sandbox Code Playgroud)
如果数据是C++枚举,是否有基于项目数据的QT执行此操作?
我试图设置双旋转框的背景颜色,我不知道我应该使用什么功能.
我看到一些函数叫做SetBackgroundRole接受a Qt::ColorRole,但我不知道如何使用这个.
请让我知道,改变一个QComboBox或多个背景颜色的简单方法是QDoubleSpinBox什么?
使用pyqt4和python 2.6,我使用qcombobox提供选项列表.我在使用所选选项时遇到问题.当选择该选项时,我能够使用信号触发方法,但问题是当用户点击运行时,需要考虑其中几个组合框的内容.所以基本上我需要将组合框的选定内容作为字符串.到目前为止,我只能使用这个:
print combobox1.currentText()
Run Code Online (Sandbox Code Playgroud)
得到这个:
PyQt4.QtCore.QString(u'Test Selection2')
Run Code Online (Sandbox Code Playgroud)
当我真正想要的是"测试选择"位时,任何想法?我的组合框是这样的:
combobox1 = qt.QComboBox()
combobox1.addItems(['Test Selection1', 'Test Selection2'])
mainLayout.addWidget(combobox1, 0, 0)
Run Code Online (Sandbox Code Playgroud) 我正在使用Qt4.6,我有一个带QCompleter的QComboBox.
通常的功能是提供基于前缀的完成提示(这些提示可以是下拉列表而不是内联 - 这是我的用法).例如,给定
chicken soup
chilli peppers
grilled chicken
Run Code Online (Sandbox Code Playgroud)
进入ch将匹配chicken soup,chilli peppers但不是grilled chicken.
我想要的是能够输入ch和匹配所有这些,或者更具体地说,chicken匹配chicken soup和grilled chicken.
我也希望能够指定一个标签一样chs,以chicken soup产生另一场比赛这不仅是对文本的内容.我可以处理算法,但是,
我需要覆盖哪些QCompleter函数?
我不确定我应该在哪里看......
我有很多QComboBoxes,在某个时刻,我需要获取特定的每个项目QComboBox来迭代.
虽然我可以只列出与其中的项目相对应的项目列表QComboBox,但我宁愿直接从小部件本身获取它们(QComboBoxes每个项目都有很多项目).
有什么功能/方法可以帮我吗?
(例如:
QComboBoxName.allItems()
Run Code Online (Sandbox Code Playgroud)
)
我已经通过类引用看了,但找不到任何相关信息.
我想过一些混乱的方法,但我不喜欢它们.
(比如通过QComboBox改变索引并获取项目等来迭代).
Python 2.7.1
IDLE 1.8
Windows 7
PyQt4
我有一个QComboBox填写QString使用:
comboBox->addItem(someString);
Run Code Online (Sandbox Code Playgroud)
当我启动GUI应用程序时,宽度QComboBox始终为70,即使最小的项目要大得多.如何动态设置的宽度QComboBox,例如,在最大QString范围内的comboBox?
编辑:
经过一些进一步的测试后,我发现了以下解
// get the minimum width that fits the largest item.
int width = ui->sieveSizeComboBox->minimumSizeHint().width();
// set the ComboBoxe to that width.
ui->sieveSizeComboBox->setMinimumWidth(width);
Run Code Online (Sandbox Code Playgroud) 我需要一些帮助添加一些项目到QComboBox.所以,我有两个组合框,一个additem填充另一个取决于所选项目.
我的问题是,使用clear()新项目,它可以工作,但如果我选择其他选项combobox,它会添加新项目,但之前的项目已经消失,新项目下面有空白项目.
我想每次我从第一个选择一个新选项QComboBox,清除第二个的内容additem,我使用clear()了第二个,但它没有工作.
这就是我想到的:
self.comboBox_2.clear()
for index,i in enumerate(list1):
self.comboBox_2.addItem(_fromUtf8(""))
self.comboBox_2.setItemText(index+2, QApplication.translate("Dialog", i, None, QApplication.UnicodeUTF8))
Run Code Online (Sandbox Code Playgroud)
以上是第一次combobox更改时执行的函数的一部分.
是否可以将Combobox设置为知道Item的文本值的项目.我试图避免循环for i in range(myCombobox.count())只是为了找到一个Item的索引,所以它可以用来设置一个组合框到该项的索引.
我有一个简单的QComboBox小部件,里面有2个值:True和False.我有一个QString变量currValue,这是其中一个值.我想设置我的小部件的当前值currValue.
我认为解决方案如下:首先让我们初始化currValue;
QString currValue = "False";
QComboBox* combo = new QComboBox();
combo->addItem("True");
combo->addItem("False");
combo->setCurrentIndex(combo->findData(currValue));
Run Code Online (Sandbox Code Playgroud)
但它不起作用.难道我做错了什么 ?为什么QComboBox没有成员setCurrentItem()或smth那样?