import QtQuick import QtQuick.Layouts import QtQuick.Controls GridLayout { property var employeeForm: null property var employees: null id: oaoemployee columns: 2 rows: 4 Label { text: qsTr("Mitarbeiter") Layout.alignment: Qt.AlignRight | Qt.AlignTop } ListModel { id: employeeModel } Component { id: employeesHeader Row { Text { id: empName text: qsTr("Mitarbeiter") width: 175 font.bold: true horizontalAlignment: Text.AlignHCenter color: "yellow" } } } Rectangle { Layout.fillWidth: true implicitHeight: 75 Layout.rowSpan: 2 color: mitarbeiterhin.palette.base border.color: mitarbeiterhin.activeFocus? mitarbeiterhin.palette.highlight: mitarbeiterhin.palette.base ListView { id: employeesList //anchors.fill: parent implicitHeight: parent.height model: employeeModel header: employeesHeader delegate: Row { width: 200 height: 15 padding: 7 Text { text: model.namens color: "yellow" } } } } RowLayout { Layout.columnSpan: 2 Layout.fillWidth: true Item { Layout.fillWidth: true } Button { id: mitarbeiterraus text: qsTr("Mitarbeiter entfernen") } Button { id: mitarbeiterhin text: qsTr("Mitarbeiter hinzufügen") onClicked: { var nm = Qt.createComponent("AddObjectEmployee.qml") if (nm.status === Component.Ready) { employeeForm = nm.createObject (appWindow, {width: 600, height: 400}) employeeForm.addNewEmployee.connect(onAddEmployee) employeeForm.show() } else console.log(nm.errorString()) } } } function onAddEmployee(new_employee) { var num_employees = 0 if (employees === null || employees === undefined) employees = {} else num_employees = Object.keys(employees).length; employees[num_employees] = {} employees[num_employees]["assignee"] = new_employee["assignee"]; employees[num_employees]["duration"] = new_employee["duration"]; employees[num_employees]["wage"] = new_employee["wage"]; employees[num_employees]["cleandays"] = new_employee["cleandays"]; employees[num_employees]["tasks"] = new_employee["tasks"]; employees[num_employees]["output"] = new_employee["output"]; employeeModel.append({namens: new_employee["assignee"]}); console.log(employeeModel.get(num_employees).namens) console.log(new_employee["assignee"]) console.log(JSON.stringify(new_employee)) } }