import sys import traceback from PyQt5.QtWidgets import QApplication, QMainWindow from PyQt5.QtCore import QCoreApplication from View.mainwindow import Ui_MainWindow from View.acoustic_data_tab import AcousticDataTab from View.signal_processing_tab import SignalProcessingTab from View.sample_data_tab import SampleDataTab from View.sediment_calibration_tab import SedimentCalibrationTab from View.acoustic_inversion_tab import AcousticInversionTab from View.note_tab import NoteTab from View.user_manual_tab import UserManualTab import matplotlib.pyplot as plt # plt.close("all") # Check encoding used # print(sys.getdefaultencoding()) # python3 -m PyQt5.uic.pyuic -x QScrollbar.ui -o QScrollbar.py PERCENT_SCREEN_SIZE = 0.85 _translate = QCoreApplication.translate class MainApplication(QMainWindow): def __init__(self): super(MainApplication, self).__init__() self.ui_mainwindow = Ui_MainWindow() self.ui_mainwindow.setupUi(self) screen = QApplication.primaryScreen() size = screen.size() width = size.width() height = size.height() self.resize(int(PERCENT_SCREEN_SIZE*width), int(PERCENT_SCREEN_SIZE*height)) try: # ************************************************** # -------------- Acoustic data tab --------------- self.acoustic_data_tab = AcousticDataTab(self.ui_mainwindow.tab1) # Connect push buttons to download data files22 # ************************************************** # --------- Signal pre-processing data tab ---------- self.signal_processing_tab = SignalProcessingTab(self.ui_mainwindow.tab2) # **************************************************. # --------------- Sample data tab ---------------- self.sample_data_tab = SampleDataTab(self.ui_mainwindow.tab3) # ************************************************** # ------------ Sediment calibration tab ------------- self.sediment_calibration_tab = SedimentCalibrationTab(self.ui_mainwindow.tab4) # ************************************************** # ------------ Acoustic inversion tab ------------- self.acoustic_inversion_tab = AcousticInversionTab(self.ui_mainwindow.tab5) # ************************************************** # ------------------- Note tab -------------------- self.note_tab = NoteTab(self.ui_mainwindow.tab6) # ************************************************** # ---------------- User Manual tab ----------------- self.user_manual_tab = UserManualTab(self.ui_mainwindow.tab7) # ************************************************** # ---------------- Text File Error ----------------- except Exception as e: with open("Error_file.txt", "w", encoding="utf-8") as sortie: sortie.write(str(e)) sortie.write(traceback.format_exc()) # traceback.TracebackException.from_exception(e).print(file=sortie) if __name__ == '__main__': # print("sys.argv:", [arg for arg in sys.argv]) # app = MainApplication(sys.argv) # sys.exit(app.exec_()) app = QApplication(sys.argv) window = MainApplication() window.show() # sys.exit(app.exec_()) app.exec()