Qt Quick:如何从ComboBox获取当前文本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt Quick:如何从ComboBox获取当前文本相关的知识,希望对你有一定的参考价值。

我尝试从ComboBox的当前索引中获取文本。 model.get(scale).text方法不起作用,它只获取第一个索引。

import QtQuick 2.7
import QtQuick.Controls 2.0
import QtQuick.Layouts 1.3
import QtQuick.Controls.Material 2.0
ApplicationWindow {
    visible: true
    width: 200
    height: 200
    title: qsTr("Hello World")
Column{
    anchors.horizontalCenter: parent.horizontalCenter
    id:optionsColumn
    spacing: 5
    anchors.fill : parent
    anchors.topMargin    : 15
    anchors.bottomMargin : 15
    anchors.leftMargin :15
    anchors.rightMargin  : 15
    ComboBox {
        id: scale
        anchors.horizontalCenter: parent.horizontalCenter
        editable: true
        inputMethodHints: Qt.ImhDigitsOnly
        currentIndex: 1
        model: ListModel {
            id: model
            ListElement { text: "500" }
            ListElement { text: "1000" }
            ListElement { text: "2000" }
            ListElement { text: "5000" }
            ListElement { text: "10000" }
            ListElement { text: "25000" }
        }
        onAccepted: {
            id:maccepted
            if (find(editText) === -1)
                model.append({text: editText})
        }
    }
    Button{
        id:showtext
        text: "Scale to text"
        anchors.horizontalCenter: parent.horizontalCenter
        onClicked: {
            var a=parseFloat(model.get(scale).text)
            scaletext.text=a
        }
    }
    TextField{
        id:scaletext
        anchors.horizontalCenter: parent.horizontalCenter
        readOnly: true
    }
}
}
答案

玩得开心。

onClicked: {
  //var a=parseFloat(model.get(scale).text)
  scaletext.text = scale.currentText; 
}

以上是关于Qt Quick:如何从ComboBox获取当前文本的主要内容,如果未能解决你的问题,请参考以下文章

这是 Qt Quick ComboBox 中的错误吗?

Qml Qt Quick Control 2:Text和ComboBox的字体大小区别

QT中ComboBox如何获取选中的文本内容??下面程序出错了,如何改正?

Qt Quick - 如何仅通过 c++ 代码与 qml 属性交互

如何从 Qt Objects(qlineedit,qcombobox) 中获取?

从Qt Quick WorkerScript调用Python方法