我有以下QML文件:
import QtQuick 2.7
import QtQuick.Controls 2.0
import QtQuick.Layouts 1.3
import ReaderView 1.0
ApplicationWindow {
visible: true
MouseArea {
anchors.fill: parent
onClicked: {
console.log("onClicked!")
}
}
ColumnLayout {
spacing: 0
anchors.fill: parent
CReaderView {
anchors.fill: parent
}
}
}
我正在敲击Nexus 7平板电脑的屏幕,但onClicked
从未打印在日志中。我还尝试将MouseArea
移动到CReaderView
内部,但没有成功。怎么回事?如何检测窗口内(理想情况下,在CReaderView
内)的敲击?
原来是console.log
不起作用。如果我调用C++类的Q_INVOKABLE
方法来传递一个字符串并用qDebug()
显示它,我确实会看到消息。因此,该问题与MouseArea
无关。