QML中动态表格修改数据

1.qml文件中的实现代码

javascript 复制代码
import QtQuick 2.15
import QtQuick.Window 2.15

import QtQuick.Controls 2.0
import Qt.labs.qmlmodels 1.0
import QtQuick.Layouts 1.15

Window {
    width: 640
    height: 480
    visible: true
    title: qsTr("Hello World")


    TableModel
    {
        id:table_model
        TableModelColumn { display: "name" }
        TableModelColumn { display: "item1" }
        TableModelColumn { display: "item2" }
        TableModelColumn { display: "item3" }
        TableModelColumn { display: "item4" }

    }


    Column
    {

        TableView
        {
            id:tabel_view_statistics

            visible: true

            implicitHeight: 100
            implicitWidth: 300

            anchors.horizontalCenter: parent.horizontalCenter


            columnSpacing: -1
            rowSpacing: -1
            clip: true

            delegate: Rectangle
            {
                implicitWidth: 50
                implicitHeight: 25
                border.width: 1

                Text
                {
                    text: display
                    anchors.centerIn: parent
                }
            }
        }

        Label{

            id:label_01
        }

        Button{

            id:button1
            text: "动态数据"

            onClicked: {


                table_model.appendRow(                        {
                                         "name": "树木",
                                         "item1": "6",
                                         "item2": "",
                                         "item3": "",
                                         "item4": ""
                                         })

                tabel_view_statistics.model = table_model


            }
        }

        Button{

            id:button2
            text: "修改数据"

            onClicked: {

                table_model.setRow(0,{
                                       "name": "森林",
                                       "item1": "9",
                                       "item2": "",
                                       "item3": "",
                                       "item4": ""
                                       })

                tabel_view_statistics.model = table_model

           


            }

        }


    }

}

2.效果图如下:

相关推荐
钱彬 (Qian Bin)9 天前
AI质检数据准备利器:基于Qt/QML 5.14的图像批量裁剪工具开发实战
qt·自定义·图像·qml·qt quick·裁剪工具
钱彬 (Qian Bin)20 天前
《使用Qt Quick从零构建AI螺丝瑕疵检测系统》——8. AI赋能(下):在Qt中部署YOLOv8模型
人工智能·qt·yolo·qml·qt quick·工业质检·螺丝瑕疵检测
Little-Hu21 天前
QML 3D曲面图(Surface3D)技术
3d·qml
Little-Hu23 天前
QML视图组件:ListView、GridView、TableView、PathView
数据库·microsoft·qml
钱彬 (Qian Bin)24 天前
《使用Qt Quick从零构建AI螺丝瑕疵检测系统》——6. 传统算法实战:用OpenCV测量螺丝尺寸
教程·cmake·qml·qt quick·工业软件·工业瑕疵检测·qt6.9.1
钱彬 (Qian Bin)1 个月前
《使用Qt Quick从零构建AI螺丝瑕疵检测系统》——4. 前后端联动:打通QML与C++的任督二脉
c++·qt·教程·qml·qt quick·qt 6.9.1·工业瑕疵检测
钱彬 (Qian Bin)1 个月前
《使用Qt Quick从零构建AI螺丝瑕疵检测系统》——0. 博客系列大纲
人工智能·qt·qml·瑕疵检测·qt quick·yolo8·工业质检
丁劲犇1 个月前
Qt Graphs 模块拟取代 charts 和 data visualization还有很长的路要走
c++·qt·qml·visualization·charts·graphs
cpp_learners1 个月前
QML与C++相互调用函数并获得返回值
c++·qt·qml
Little-Hu1 个月前
QML事件处理:鼠标、拖拽与键盘事件
qml