19/11/14日志

多线程以及进度条

class RunThread(QThread):
    update_pb = pyqtSignal(int) 
    terminate_thread = pyqtSignal() # 定义更新进度条的信号

    def __init__(self):
        super().__init__()
        self.i = 0
        self.tip = ''

    def run(self):
        global Orig_data
        global File_dir
        global Grid_size
        global File_name
        global tip
        self.i = 10
        self.update_pb.emit(self.i)
        # get_data = inverse_data.get_orig_data(inverse_data, File_dir, Orig_data, Grid_size, File_name)
        self.i = 30
        self.update_pb.emit(self.i)  #发送信号(发送的是30)
        time.sleep(1)
        recom_data = inverse_data.inverse_coor(inverse_data, get_data) #
        self.i = 50
        self.update_pb.emit(self.i)
        time.sleep(1)
        final_data = inverse_data.get_height(inverse_data, recom_data) #
        self.i = 90
        self.update_pb.emit(self.i)
        time.sleep(1)
        name = 'recom_' + File_name #
        np.savetxt(os.path.join(File_dir, name), final_data, fmt='%.2f') #
        self.i = 100
        self.update_pb.emit(self.i)  # 这里发出一个信号
        time.sleep(1)
        self.terminate_thread.emit() # 这里发出一个信号(提示程序处理数据完成,显示提示框)

    def kill_thread(self):  #定义一个结束线程的函数
        self.terminate()

上面是定义的线程类,耗时的程序放在run()函数下。
下面是我信号传递出来要执行的函数:

    def update_progressbar(self, int):
        self.progressBar.setValue(int)

    def show_finished(self):
        a = QMessageBox()
        a.information(self, '提示', tip)
        self.thread.kill_thread()

下面是槽函数相应函数。

    def on_pushButton_3_clicked (self):
        self.thread.update_pb.connect(self.update_progressbar)
        self.thread.terminate_thread.connect(self.show_finished)
        self.thread.start()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器学习模型机器
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值