簡體   English   中英

具有InputText的QML Gridview

[英]QML Gridview with InputText

我需要在每行上都帶有InputText的Listview。 用例是一個購物車,其中每行可以更改數量。

使用以下代碼,Listview呈現帶有一個標簽和一個文本框的旁邊。

問題是,所有文本框都將具有相同的ID,因此,所有文本框值都將根據上一次更改的文本框值進行更改。 例如:如果我為第一項輸入10,為第二項輸入12,則即使第一項的數量也變為12。

is only for demonstration. 僅用於演示。 going forward: 將來可能是

    ListView {
    id:list
    model: fruitModel
    x:10
    y:10
    width: parent.width-20
    height: parent.height-20
    clip:true
    anchors.fill: parent
    delegate: Row {
        width: parent.width
        height:30
        Item
        {
        property variant myData: model
        property alias value: text.text
        Text {
            id:text
            width: parent.width
            height: 30
            text:name
        }
        InputText {
            id: inp_box
            text:qty
            width:100
            height:22
            anchors.verticalCenterOffset: 15
            anchors.horizontalCenterOffset:250
            focus: true
            onEnter: {
            editQty(inp_box.text);
            }
        }
        }
    }
    focus: true
    snapMode: ListView.SnapOneItem
    ScrollBar {
        flickable: list
        vertical: true
        hideScrollBarsWhenStopped:false
    }
    }

您應該擴展editQty函數,以將fruitModel中已編輯條目的索引作為附加參數。 當前條目的索引在列表視圖的委托中作為index 用這種方式, editQty沒有機會知道要更改哪個條目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM