【问题标题】:Emit signals on changes in a QVector在 QVector 的变化上发出信号
【发布时间】:2013-01-31 22:16:02
【问题描述】:

我有一个包含 8 个整数的 QVector。现在我想要一个在这个向量的元素改变时发出的信号。这个信号应该包含被改变的元素的编号。

我该怎么做?

【问题讨论】:

    标签: qt signals


    【解决方案1】:

    QVector 不是从 QObject 派生的,因此不会发出任何信号。

    您可以做的是将 QVector 对象封装为您自己的类中的私有成员,该类派生自 QObject 并编写您需要的修改方法,并在该类中编写和发出您需要的信号。

    【讨论】:

      【解决方案2】:

      这相当棘手。您不应该从QVector 继承,因为它没有虚拟析构函数,也没有可用于挂钩的受保护函数。最安全的方法是将QVector 包装到您自己的实现这些信号的特定于域的类中。

      【讨论】:

        猜你喜欢
        • 2015-09-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-05-07
        • 1970-01-01
        相关资源
        最近更新 更多