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
が動作します。私はどのように私はワーカーに直接ワーカースレッドを許可することができます誰か考えているかどうかは疑問に思っていますか?
これについて[ここ](http://stackoverflow.com/questions/7872578/how-to-properly-use-qregistermetatype-on-a-class-derived-from-qobject)に関する議論があります。簡単に言えば、これはQtにユーザや外部ソースによって定義された他のタイプについて「知らせる」ために使用されます。通常は、信号とスロットに必要です。 – Huy