Диалог на QML падает
Хочу простой диалог на QML с Pyside2
Вот код https://gist.github.com/alex-eri/cdf0a529d6745eef6b49cb20e684bd37
from PySide2.QtWidgets import QApplication
from PySide2.QtCore import QUrl
import os
import sys
from PySide2.QtQml import QQmlApplicationEngine
app = QApplication(sys.argv)
qml_file = os.path.join(os.path.dirname(__file__), "main.qml")
view =QQmlApplicationEngine(parent=app)
view.addImportPath(os.path.dirname(__file__))
view.load(QUrl.fromLocalFile(os.path.abspath(qml_file)))
sys.exit(app.exec_())
и qml
import QtQuick.Controls 2.14
import QtQuick.Window 2.14
import QtQuick.Dialogs 1.3 as Dialogs
Window {
flags: Qt.FramelessWindowHint
id: main
Dialogs.Dialog {
title: "Title"
id: dialog
visible: true
standardButtons: Dialog.Cancel | Dialog.Open
Label {
text: 'Text'
}
onAccepted: console.log("Ok clicked")
onRejected: console.log("Cancel clicked")
}
}
Всё работает нормально с кнопкам Ок, Отмена. При нажатии на крестик на диалоге получется сегфолт.
$ python main.py
Must construct a QGuiApplication first.
Ошибка сегментирования (стек памяти сброшен на диск)
Ломается оно только когда основное окно скрыто. Как показать дилог не открывая окошка?
Если показывать окошко прямо перед открытием диалога - всёравно падает