0

我想重新实现创建自己的 QThread 类的运行函数。

我创造了这个,

class MyThread : public QThread
{
public:
    void run();
};

void MyThread::run()
{
    gui w;
    w.listen_device(w.ui->comboBox->currentIndex());
    exec();
}

我不能在主线程之外使用 QPaint,所以我将该值作为参数提供给我的 listen_device 函数。

我知道来自 gui 的 ui 是受保护的,那么我怎样才能得到这个值呢?

谢谢。

4

1 回答 1

1

gui在类中创建将返回的公共方法ui->comboBox->currentIndex();

public:
  int gui::getCurrentIndex() // or whatever
  { 
    return ui->comboBox->currentIndex();
  }

并且不要子类化QThread,而是使用moveToThread()on QObject

于 2013-02-19T20:52:26.737 回答