【问题标题】:How to make a class in Qt both scriptable and serializable?如何使 Qt 中的类既可编写脚本又可序列化?
【发布时间】:2012-10-04 23:41:39
【问题描述】:

我正在尝试编写一个具有两个基本特征的类:

  • 它必须是可编写脚本的 - 该类包含许多用 Q_INVOKABLE 修饰的属性和方法,这些属性和方法会暴露给脚本。
  • 它需要是可序列化的,以便它可以注册到qRegisterMetaTypeStreamOperators()以存储在QVariants中。

据我所知,我需要从QObject 派生以使该类可编写脚本。但是,为了向qRegisterMetaTypeStreamOperators() 注册类,该类似乎需要有一个默认的复制构造函数——这是QObject 派生类所不能具备的。

有没有办法实现这两个目标?

【问题讨论】:

    标签: qt qobject qtscript qvariant


    【解决方案1】:

    您可以拥有不是从 QObject 派生的可编写脚本的对象,但它的工作量更大。已讨论here

    【讨论】:

      猜你喜欢
      • 2021-09-13
      • 2013-10-17
      • 2013-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-13
      • 1970-01-01
      相关资源
      最近更新 更多