关于Qt 静态成员函数调用信号

class globalCalcThread;
 
  
extern globalCalcThread *g_calcThread;
 
  
class globalCalcThread : public QThread
{
    Q_OBJECT
public:
    globalCalcThread();
    ~globalCalcThread();
      //添加一个静态函数,让外部函数调用
    static void change();
    void emitSignal();
protected:
    void run();
 signals:
    void onChange();
 
  
};
 
  
globalCalcThread *g_calcThread = new globalCalcThread;
 
  
 
  
void globalCalcThread::change()
{
    g_calcThread->emitSignal();
}
 
  
void globalCalcThread::emitSignal()
{
    emit this->onChange();
}

 
  
 
  
connect(g_calcThread,SIGNAL(onChange()),this,SLOT(sl_Change()));
 
  
 
  
在外部调用change()静态成员函数就可以发射信号了

你可能感兴趣的:(QT)