我想這純粹是不可能的QML
。但是你可以嘗試一些C++的擴展:
class ScreenManager : public QObject
{
Q_OBJECT
public:
explicit ScreenManager(QObject *parent = 0);
Q_INVOKABLE int screenCount() const {
return QGuiApplication::screens().count();
}
Q_INVOKABLE void setScreen(QWindow * window, int screen) {
if(screen >= 0 && screen < QGuiApplication::screens().count())
window->setScreen(QGuiApplication::screens().at(screen));
}
};
可以暴露對象QML
作爲一個單身或獨立項目。
,因此用它QML:
ApplicationWindow {
id: mainWindow
visible: true
Component.onCompleted: {
console.log(screenManager.screenCount());
screenManager.setScreen(mainWindow,1); // for a second screen
}
ScreenManager {
id: screenManager
}
}
但目前我有電腦有更多的1個屏幕,所以我沒有測試的代碼。
可見性不是字符串屬性。你的情況必須是'Window.FullScreen'。 – folibis
這兩個變種都很好,並且正在工作。也許你的速度更快。 –