Como adicionar itens a um listview da perspectiva do usuário

1

Eu queria saber como eu poderia fazer com que um usuário adicionasse itens à minha lista, para que os eventos dele pudessem ficar lá e depois migrar para um banco de dados. abaixo dele o código que eu tenho para o meu listview agora eu quero saber se um usuário com uma caixa de texto pode adicionar novos itens para

Rectangle {
y: 170
x: 100
width: rootId.width
height: rootId.height
z: 1
color: "transparent"

ListModel {
    id: nome_eventoModel

    ListElement { nome_evento: "festival multi cultural"; tipo_evento: "Magos" }
    ListElement { nome_evento: "workshop multimedia"; tipo_evento: "IDAS" }
    ListElement { nome_evento: "Congresso jovem"; tipo_evento: "CML" }
    ListElement { nome_evento: "Workshop Ubuntu mobile"; tipo_evento: "Departamento Ubuntu IDAS" }
    ListElement { nome_evento: "Workshop trabalhar com QML"; tipo_evento: "Departamento Ubuntu IDAS" }
}
Component {
    id: nome_eventoDelegate
    Text {
        text: nome_evento;
        font.pixelSize: 24
        anchors.left: parent.left
        anchors.leftMargin: 2
    }
}

ListView {
    y: 10
    anchors.leftMargin: -65
    anchors.topMargin: -37
    anchors.rightMargin: -169
    anchors.bottomMargin: 22
    layoutDirection: Qt.LeftToRight
    anchors.fill: parent
    model: nome_eventoModel
    delegate: nome_eventoDelegate
    focus: true
    highlight: Rectangle {
        color: "#F08080"
        width: parent.width
    }
    section {
        property: "tipo_evento"
        criteria: ViewSection.FullString
        delegate: Rectangle {
            color: "#b0dfb0"
            width: parent.width
            height: childrenRect.height + 4
            Text {
                anchors.horizontalCenter: parent.horizontalCenter
                anchors.verticalCenter: parent

                font.pixelSize: 16
                font.bold: true
                text: section
            }
        }
    }
}
Component {
    id: petdelegate
    Text {
        id: label
        font.pixelSize: 24
        text: if (index == 0)
            label.text = type + " (default)"
        else
            text: type
    }
}

}

    
por Diogo Figueira 04.05.2015 / 08:24

1 resposta

0

você pode usar ListModel.append()

adicione dois elementos TextField (um para o nome_evento e outro para o tipo_evento) e um Button

Então, quando você clica no botão, ele deve anexar o que você escreveu nos campos de texto

Button{
    onClicked : 
        if(texField1.text !== "" && texField2.text !== ""){
            nome_eventoModel.append({"nome_evento": texField1.text, 
                                     "tipo_evento": texField2.text})
        }
}
    
por Ali Diouri 26.01.2016 / 12:33