QtQuick/QML方法1:信号监听、单例类注册与调用

本文介绍了QtQuick/QML中的基本操作,包括如何定义和监听信号,如minusClicked(),以及如何连接信号到槽函数。同时,详细阐述了单例类的创建,需使用Q_INVOKABLE修饰公有函数,并提供显式构造。在QML中注册静态函数并通过qmlRegisterSingletonType进行调用的方法也进行了说明。

记录一些QtQuick/QML基础方法,大佬忽略。。。

信号监听

1、在qml定义全局信号

        signal minusClicked()

2、监听信号/连接信号与槽

        对象id.minusClicked.connect(onPopupClosed); //定义function PopupClosed()

        或

        Connections {

                target: target

                onSignal:{

                        //function

                }

单例类注册与调用

1、公共类,函数定义使用Q_INVOKABLE说明,如

        Q_INVOKABLE void funcA(param pa);

        单参数构造,建议添加显式构造声明

        explicit constructor(param pa);

2、在main.qml注册静态函数,返回静态指针
        static QObject* classPubProvider(QQmlEngine *engine, QJSEngine *scriptEngine)
        {

                ClassPub* pPub = new ClassPub(pa);                
                return pPub;
        }
3、在main中注册,   qmlRegisterSingletonType<类名>("库名",版,本,"对象名",main中实例化函数名)

        qmlRegisterSingletonType<ClassPub>("pub.Class",1,0,"classPub",classPubProvider);


4、在qml中静态调用
        classPub.funcA(pa);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值