【发布时间】:2013-06-22 12:07:03
【问题描述】:
我正在尝试使用 POSIX 线程使用单独的工作线程更新表中的值。
工作线程正在执行的函数正在尝试执行以下操作:
ui->table->setItem(0,0,new QTableWidgetItem(tr("%1").arg(value)));
但是,在运行时我收到以下错误:
QObject::connect: Cannot queue arguments of type 'QVector<int>'
(Make sure 'QVector<int>' is registered using qRegisterMetaType().)
我不太确定qRegisterMetaType 是如何工作的。我想知道是否有人知道如何授予工作线程直接访问小部件的权限?
【问题讨论】:
-
有一些关于这个here的讨论。简单来说,它用于让 Qt “知道”用户或某些外部源定义的其他类型。通常,信号和插槽需要它。
标签: c++ multithreading qt user-interface