首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QQuickWidget“关闭”信号

QQuickWidget“关闭”信号
EN

Stack Overflow用户
提问于 2020-05-19 01:41:13
回答 1查看 104关注 0票数 0

当QQuickWidget关闭时,它会告诉我什么信号?

例如,我编写了以下代码:

代码语言:javascript
复制
QQuickWidget *view = new QQuickWidget;
view->setSource(QUrl::fromLocalFile("main.qml"));
view->show();

我在main.qml文件中有一个ApplicationWindow,我想在qml窗口关闭后立即执行一些代码。

EN

回答 1

Stack Overflow用户

发布于 2020-05-19 02:10:25

解决方案是实现一个注入到QML中的Helper,并在窗口关闭时通知我们:

代码语言:javascript
复制
class Helper: public QObject{
    Q_OBJECT
public:
    using QObject::QObject;
Q_SIGNALS:
    void closed();
};
代码语言:javascript
复制
Helper *helper = new Helper;
QObject::connect(helper, &Helper::closed, [](){
   qDebug() << "closed";
});

QQuickWidget *view = new QQuickWidget;
view->rootContext()->setContextProperty("helper", helper);
view->setSource(QUrl::fromLocalFile("main.qml"));
view->show();
代码语言:javascript
复制
ApplicationWindow {
    // ...
    onClosing: helper.closed()
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61875676

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档