当在界面点击按钮触发大计算量函数时会造成界面卡住,其他操作无法响应。因此,考虑按钮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中直接写信号或者槽函数的名称,前面无需加类,否则连接失败。