def update_record_progress_bar(self): global ser_reader_thread, recording, values_to_record, record_start_time rate = ser_reader_thread.sps while recording: self.progress.setValue(100 / (values_to_record / rate) * (time.time() - record_start_time)) # map recorded/to_record => 0% - 100% QApplication.processEvents() time.sleep(0.01) self.progress.setValue(0)
def showMessage(self, msg): """ Public method to show a message in the bottom part of the splashscreen. @param msg message to be shown (string or QString) """ QSplashScreen.showMessage(self, msg, self.labelAlignment, QColor(Qt.black)) QApplication.processEvents()
class QAppTestCase(unittest.TestCase): def setUp(self): self.app = QApplication([]) QTimer.singleShot(20000, self.app.exit) def tearDown(self): if hasattr(self, "scene"): self.scene.clear() self.scene.deleteLater() self.app.processEvents() del self.scene self.app.processEvents() del self.app gc.collect() def singleShot(self, *args): QTimer.singleShot(*args)
def loadDcmDir(self, event=None, filename=None): self.statusBar().showMessage('Loading DICOM data...') QApplication.processEvents() # TODO uninteractive Serie selection #self.data3d, self.metadata = dcmr.dcm_read_from_dir(datadir) datadir = dcmr.get_dcmdir_qt(self.qt_app) # @TODO dialog v qt reader = dcmr.DicomReader(datadir)#, qt_app=self.qt_app) self.data3d = reader.get_3Ddata() self.metadata = reader.get_metaData() self.inps['series_number'] = reader.series_number self.inps['datadir'] = datadir self.statusBar().showMessage('DICOM data loaded')
class TestItems(unittest.TestCase): def setUp(self): import logging from PyQt5.QtGui import QApplication, QGraphicsScene, QGraphicsView, \ QPainter from PyQt5.QtCore import QTimer logging.basicConfig() self.app = QApplication([]) self.scene = QGraphicsScene() self.view = QGraphicsView(self.scene) self.view.setRenderHints( QPainter.Antialiasing | \ QPainter.SmoothPixmapTransform | \ QPainter.TextAntialiasing ) self.view.resize(500, 300) self.view.show() QTimer.singleShot(10000, self.app.exit) def my_excepthook(etype, value, tb): sys.setrecursionlimit(1010) traceback.print_exception(etype, value, tb) self._orig_excepthook = sys.excepthook sys.excepthook = my_excepthook self.singleShot = QTimer.singleShot def tearDown(self): self.scene.clear() self.scene.deleteLater() self.view.deleteLater() del self.scene del self.view self.app.processEvents() del self.app sys.excepthook = self._orig_excepthook
def saveDcm(self, event=None, filename=None): if self.dcm_3Ddata is not None: self.statusBar().showMessage('Saving DICOM data...') QApplication.processEvents() if filename is None: filename = str(QFileDialog.getSaveFileName(self, 'Save DCM file', filter='Files (*.dcm)'))[0] if len(filename) > 0: savemat(filename, {'data': self.dcm_3Ddata, 'voxelsize_mm': self.voxel_size_mm, 'offsetmm': self.dcm_offsetmm}, appendmat=False) self.setLabelText(self.text_dcm_out, filename) self.statusBar().showMessage('Ready') else: self.statusBar().showMessage('No output file specified!') else: self.statusBar().showMessage('No DICOM data!')
def clearMessage(self): """ Public method to clear the message shown. """ QSplashScreen.clearMessage(self) QApplication.processEvents()
def update_steps_progress_bar(self, current_step): self.steps_progress_bar.setValue(current_step / self.steps_spin.value() * 100) QApplication.processEvents()