我开始研究QT / QML,PyQt桌面应用程序 . 我有一些Qt / QML的基本知识 .
我正在尝试修改已存在的一个桌面应用程序 .
这是我在应用程序的主窗口中添加一个按钮打开另一个窗口 .
main.qml
Button {
text: "Open Window"
Loader{ id: pageLoader }
onClicked: {
console.log("Clicked")
pageLoader.source = "testing.qml"
}
}
testing.qml
import QtQuick 2.2
import QtQuick.Window 2.2
Window {
id: win1
width: 1000;
height: 1000;
visible: true;
visibility: "Maximized"
color: "#363636";
title: "First Window";
Text {
anchors.centerIn: parent
text: "Page 1"
}
MouseArea{
anchors.fill: parent;
onClicked: pageLoader.source="";
}
}
当我点击按钮时,新窗口成功打开 . 但当我关闭新窗口并尝试重新打开时,它将无法打开 . 它只是打印“点击” .
1 回答
您的问题是,只有当您通过单击它包含的
MouseArea
来关闭窗口时,才会清除_2819545的源 . 如果您使用x
按钮关闭它,则不会清除它,因此加载程序保持活动状态且源保持不变 .要解决这个问题,你可以确保,当你点击open-
Button
时,源更改了或者使用
Window
sclosing()
-signal