ReferenceError 委托未定义。为什么?
ReferenceError delegate is not defined. Why?
我有一个具有以下目录布局的 Qt Creator 项目:
现在,在文件 main.qml
中,我试图包含 UePeopleItemDelegate.qml
:
import QtQuick 2.4
import QtQuick.Controls 1.3
import QtQuick.Window 2.2
import QtQuick.Dialogs 1.2
import QtMultimedia 5.0
import QtQuick.Layouts 1.0
import QtTest 1.1
import "gui/delegates"
ApplicationWindow {
id: ueWindowMain
title: qsTr("TestClient ver 1.00")
width: Screen.desktopAvailableWidth
height: Screen.desktopAvailableWidth
visible: true
opacity: 1.0
contentOrientation: Qt.LandscapeOrientation
color: "black"
ListView {
id: uePeopleListView
snapMode: ListView.SnapToItem
highlightRangeMode: ListView.ApplyRange
anchors.right: parent.right
anchors.rightMargin: 0
anchors.bottom: parent.top
anchors.bottomMargin: -128
anchors.left: parent.left
anchors.leftMargin: 0
anchors.top: parent.top
anchors.topMargin: 0
orientation: ListView.Horizontal
flickableDirection: Flickable.HorizontalFlick
antialiasing: true
delegate: UePeopleItemDelegate
model: ListModel {
ListElement {
name: "Grey"
colorCode: "grey"
}
ListElement {
name: "Red"
colorCode: "red"
}
ListElement {
name: "Blue"
colorCode: "blue"
}
ListElement {
name: "Green"
colorCode: "green"
}
}
}
}
项目编译和构建没有问题,但是,我收到以下与 QML 相关的运行时错误:
qrc:/main.qml:43: ReferenceError: UePeopleItemDelegate is not defined.
错误指的是行
delegate: UePeopleItemDelegate
个 main.qml
。为什么 UePeopleItemDelegate
不被识别?我用 import "gui/delegates"
语句导入了它。我错过了什么?
可能是您没有使用牙套。
试试这个:
delegate: UePeopleItemDelegate {}
我有一个具有以下目录布局的 Qt Creator 项目:
现在,在文件 main.qml
中,我试图包含 UePeopleItemDelegate.qml
:
import QtQuick 2.4
import QtQuick.Controls 1.3
import QtQuick.Window 2.2
import QtQuick.Dialogs 1.2
import QtMultimedia 5.0
import QtQuick.Layouts 1.0
import QtTest 1.1
import "gui/delegates"
ApplicationWindow {
id: ueWindowMain
title: qsTr("TestClient ver 1.00")
width: Screen.desktopAvailableWidth
height: Screen.desktopAvailableWidth
visible: true
opacity: 1.0
contentOrientation: Qt.LandscapeOrientation
color: "black"
ListView {
id: uePeopleListView
snapMode: ListView.SnapToItem
highlightRangeMode: ListView.ApplyRange
anchors.right: parent.right
anchors.rightMargin: 0
anchors.bottom: parent.top
anchors.bottomMargin: -128
anchors.left: parent.left
anchors.leftMargin: 0
anchors.top: parent.top
anchors.topMargin: 0
orientation: ListView.Horizontal
flickableDirection: Flickable.HorizontalFlick
antialiasing: true
delegate: UePeopleItemDelegate
model: ListModel {
ListElement {
name: "Grey"
colorCode: "grey"
}
ListElement {
name: "Red"
colorCode: "red"
}
ListElement {
name: "Blue"
colorCode: "blue"
}
ListElement {
name: "Green"
colorCode: "green"
}
}
}
}
项目编译和构建没有问题,但是,我收到以下与 QML 相关的运行时错误:
qrc:/main.qml:43: ReferenceError: UePeopleItemDelegate is not defined.
错误指的是行
delegate: UePeopleItemDelegate
个 main.qml
。为什么 UePeopleItemDelegate
不被识别?我用 import "gui/delegates"
语句导入了它。我错过了什么?
可能是您没有使用牙套。 试试这个:
delegate: UePeopleItemDelegate {}