From 3c80981c8a8b243d4ed6a30e13d609ee525a9deb Mon Sep 17 00:00:00 2001 From: 283375 Date: Wed, 27 Sep 2023 18:50:21 +0800 Subject: [PATCH] impr: ocr queue `processEvent` frequency --- ui/implements/tabs/tabOcr/tabOcr_Device.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/ui/implements/tabs/tabOcr/tabOcr_Device.py b/ui/implements/tabs/tabOcr/tabOcr_Device.py index 42984c9..0cd3580 100644 --- a/ui/implements/tabs/tabOcr/tabOcr_Device.py +++ b/ui/implements/tabs/tabOcr/tabOcr_Device.py @@ -99,9 +99,19 @@ class TabOcr_Device(Ui_TabOcr_Device, QWidget): files, _filter = QFileDialog.getOpenFileNames( self, None, "", "Image Files (*.png *.jpg *.jpeg *.bmp *.webp);;*" ) - for file in files: + filesNum = len(files) + if filesNum >= 1000: + updateFreq = 20 + elif filesNum >= 100: + updateFreq = 10 + elif filesNum >= 30: + updateFreq = 5 + else: + updateFreq = 1 + for i, file in enumerate(files): self.ocrQueueModel.addItem(file) - QApplication.processEvents() + if i % updateFreq == 0: + QApplication.processEvents() self.ocrQueue.resizeTableView() @Slot()