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

被折叠的 条评论
为什么被折叠?



