我们使用的是 QtQuick.Controls 2.2,由于各种原因无法降级。当我们使用 Combobox
来自 QML 的 util,它不会与 selectByMouse
一起出现1.4 版本中引入的字段。
我们的要求是——能够选择组合框中的文本以进行复制以及有一个下拉菜单。
如何解决这个问题;有什么替代方法吗?
最佳答案
您可以更改 contentItem
成为 TextField
与您选择的属性。这可能如下所示:
ComboBox {
id: control
model: ['Hallo', 'Hello', 'Sallut', 'Godan Dagin']
editable: true
contentItem: TextField {
text: control.editText
selectByMouse: true
}
}
请注意,如果您编辑文本,并且
editText
不是您模型的元素,它不会被接受为 displayText
.这适用于
QtQuick.Controls 2.2
起,作为属性 editable
和 editText
需要存在。然后它会自动将编辑后的文本复制回 displayText
一旦它是一个有效的输入。对于早期版本,这很难实现。
关于qt - QML QtQuick.Controls 2.2 Combobox 没有 selectByMouse;什么是替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46239595/