QThread与QWidget间的信号与槽

当在界面点击按钮触发大计算量函数时会造成界面卡住,其他操作无法响应。因此,考虑按钮clicked连接槽函数开启一个新的线程,在该线程中进行大量计算,计算结束后将结果传回界面。

1、自定义MyThread类继承QTread;定义一个信号sig_returnToWidget();

2、在QWidget类实例化MyThread * mythread  = new MyThread();

定义槽函数slot_fromThread();

在构造函数中connect(mythread,SIGNAL(sig_returnToWidget()),this,SLOT(slot_fromThread());

注意不管在哪里connect,SIGNAL和SLOT中直接写信号或者槽函数的名称,前面无需加类,否则连接失败。

你可能感兴趣的:(QThread与QWidget间的信号与槽)