我有一个组合框的项目,我只是想显示它们,而不能选择任何他们。我在Qt设计器中搜索,但我找不到合适的属性。有任何想法吗 ?如何在Pyqt中创建一个只读组合框?
2
A
回答
2
你不能做到这一点在QtDesigner你必须连接currentIndexChanged
信号与功能将恢复无论用户选择旧值:
示例:
导入系统 来自PyQt4导入QtGui,QtCore
class MainWidget(QtGui.QWidget):
def __init__(self):
super(MainWidget, self).__init__()
# Create a combo and set the second item to be selected
self.combo = QtGui.QComboBox()
self.combo.addItems(['foo', 'bar', 'baz'])
self.combo.setCurrentIndex(1)
# Connect the combo currentIndexChanged signal
self.combo.activated.connect(self.on_combo_change)
# Setup layout
self.layout = QtGui.QVBoxLayout()
self.layout.addWidget(self.combo)
self.setLayout(self.layout)
def on_combo_change(self, index):
# Whatever the user do, just ignore it and revert to
# the old value.
self.combo.setCurrentIndex(1)
app = QtGui.QApplication(sys.argv)
mw = MainWidget()
mw.show()
app.exec_()
2
QComboBox.setEditable(False)
应该这样做:http://pyqt.sourceforge.net/Docs/PyQt4/qcombobox.html#setEditable
相关问题
- 1. 如何使用PyQt在内部创建与组合框的组合框
- 2. 如何创建一个Qt组合框
- 3. 如何在java中创建一个只读数组?
- 4. 如何在Java中创建一个数组只读?
- 5. 如何在iphone中创建组合框?
- 6. 如何在J2ME中创建组合框?
- 7. 如何在angualr js中创建一个多列组合框
- 8. 如何在pyqt中为Qtables创建组合过滤器
- 9. Pyqt - 如何更改组合框数据,因为另一个组合框数据?
- 10. 如何创建只读复选框MVC?
- 11. 用LoadOnDemand创建一个ASP.Net组合框
- 12. PyQt在QMainWindow中创建一个QDialog
- 13. 在pyqt中,如何在组合框中添加项目?
- 14. 组合框在PyQt中的存储值
- 15. 如何使JavaFX中的复选框或组合框只读
- 16. 如何在Python中创建一个类字段[list]只读?
- 17. 如何在PostgreSQL中创建一个只读用户?
- 18. 如何在bash中创建一个本地只读变量?
- 19. 如何在python中为ElasticSearch创建一个只读客户端?
- 20. 如何创建一个组合框里面的树视图(与复选框) - PyQt的
- 21. 如何在Access 2000中只读组合框?
- 22. 如何在itext7中创建只读PDF
- 23. 得到一个组合框的值,并创建另一个组合框
- 24. 如何在类中创建并初始化一个静态只读数组struct?
- 25. 从创建一类组合框 - 在VB.net
- 26. vb.net中的组合框只读属性
- 27. WinForms中的只读组合框
- 28. wxwidgets组合框在Windows上为只读
- 29. 如何在fastutil中创建只读集合?
- 30. 创建一个组合框在一个视图模型9+ MVC
这不是我的目标。我的目标是comboBox能够显示它的选项,但是这些选项都不能被选中。像一个tebleWidget,其selectionMode设置为NoSelection。 – GiannisIordanou
所以你想要组合框被启用,用户可以点击,展开它,寻找其他值,但是如果他试图改变值,旧值将被设置? –
确切地说,我可以将选择背景颜色更改为白色,以便丢失所选项目的蓝色,并且如果组合框的索引更改为设置旧值,则连接。但仍然存在选择的轮廓。 – GiannisIordanou