def main(): app = QApplication([]) windows = QMainWindow() windows.resize(500, 400) windows.move(300, 310) windows.show() app.exec_()
class JosephusUIOnPyside2(QTUI): def __init__(self, title) -> None: self.window = QMainWindow() self.window.resize(500, 400) self.window.move(300, 310) self.window.setWindowTitle(title) self.textEdit = QPlainTextEdit(self.window) self.textEdit.setPlaceholderText("Please input people's items") self.textEdit.move(10, 25) self.textEdit.resize(300, 350) self.button = QPushButton('Generate survior', self.window) self.button.move(380, 80) self.button.clicked.connect(self.handle_button) def handle_button(self) -> None: people_info = self.textEdit.toPlainText() reader = [] for row in people_info: data = row(read_files.str2list_row) reader.append(data) ring = Josephus.Ring(reader) ring.start = 0 ring.step = 1 res = ring.query_list_all() size_res = len(res) generator = ring.iter() survior = '' for i in range(size_res): some_one = next(generator) if some_one == None: break if i == size_res - 1: survior = 'Survivor\'s name is' + some_one.name + \ 'age is' + some_one.age + 'gender is' + some_one.gender else: continue QmessageBox.about(self.window, 'Survior\'s items', survior)
class Stats(): def __init__(self): self.window = QMainWindow() self.window.resize(500, 400) self.window.move(300, 300) self.window.setWindowTitle('薪资统计') self.textEdit = QPlainTextEdit(self.window) self.textEdit.setPlaceholderText('请输入薪资表') self.textEdit.move(10, 25) self.textEdit.resize(300, 350) self.button = QPushButton('统计', self.window) self.button.move(380, 80) self.button.clicked.connect(self.handleCalc) pass def handleCalc(self): info = self.textEdit.toPlainText() salary_above_20k = '' salary_below_20k = '' for line in info.splitlines(): if not line.strip(): continue pass parts = line.split(' ') print(type(parts)) parts = [p for p in parts if p] name, salary, age = parts if int(salary) >= 20000: salary_above_20k += name + '\n' pass else: salary_below_20k += name + '\n' pass pass QMessageBox.about( self.window, '统计结果', f'''薪资20000 以上的有:\n{salary_above_20k} \n薪资20000 以下的有:\n{salary_below_20k}''') pass pass
class Stats(): def __init__(self): self.window = QMainWindow() self.window.resize(500, 400) self.window.move(300, 300) self.window.setWindowTitle('学生管理系统') self.label_account = QLabel(self.window) self.label_password = QLabel(self.window) self.label_account.setText("账号") self.label_password.setText("密码") self.textEdit = QPlainTextEdit(self.window) self.textEdit.setPlaceholderText("请输入薪资表") self.textEdit.move(10, 25) self.textEdit.resize(300, 350) self.button = QPushButton('统计', self.window) self.button.move(380, 80) self.button.clicked.connect(self.handleCalc) def handleCalc(self): info = self.textEdit.toPlainText() print(info) # 薪资20000 以上 和 以下 的人员名单 salary_above_20k = '' salary_below_20k = '' for line in info.splitlines(): print(line) if not line.strip(): continue parts = line.split(' ') # 去掉列表中的空字符串内容 parts = [p for p in parts if p] name, salary, age = parts if int(salary) >= 20000: salary_above_20k += name + '\n' else: salary_below_20k += name + '\n' QMessageBox.about( self.window, '统计结果', f'''薪资20000 以上的有:\n{salary_above_20k} \n薪资20000 以下的有:\n{salary_below_20k}''')
class Stats(): def __init__(self): # 主窗口 self.window = QMainWindow() self.window.resize(500, 400) self.window.move(300, 300) self.window.setWindowTitle('薪资统计') # 纯文本框 self.textEdit = QPlainTextEdit(self.window) self.textEdit.setPlaceholderText("请输入薪资表") self.textEdit.move(10, 25) self.textEdit.resize(300, 350) # 按钮 self.button = QPushButton('统计', self.window) self.button.move(380, 80) # 按钮绑定响应函数 self.button.clicked.connect(self.handleCalc) def handleCalc(self): # 获取纯文本框里的内容 info = self.textEdit.toPlainText() # 薪资20000 以上 和 以下 的人员名单 salary_above_20k = '' salary_below_20k = '' for line in info.splitlines(): if not line.strip(): continue parts = line.split(' ') # 去掉列表中的空字符串内容 parts = [p for p in parts if p] name, salary, age = parts if int(salary) >= 20000: salary_above_20k += name + '\n' else: salary_below_20k += name + '\n' QMessageBox.about( self.window, '统计结果', f'''薪资20000 以上的有:\n{salary_above_20k} \n薪资20000 以下的有:\n{salary_below_20k}''')
class Stats: def __init__(self): self.ui = QUiLoader().load('F:\\Msc_project.ui') self.ui.PushButton.clicked.connect(self.handleCalc) self.ui.pushButton_2.clicked.connect(self.handleCalc2) self.window = QMainWindow() self.window.resize(500, 400) self.window.move(450, 200) self.ui.radioButton.clicked.connect(self.handleCalc3) self.ui.radioButton_2.clicked.connect(self.handleCalc4) self.pattern = 1 def handleCalc(self): sent = self.ui.plainTextEdit.toPlainText() length = len(sent) print(length) if length == 0: QMessageBox.about(self.window, 'warnning:empty input', 'please write something!') elif (length != 0 and self.pattern == 1): # model = Seq2Seq().to(cfg.device) # model.load_state_dict(torch.load('D:\\NMT\\model.pt',map_location='cpu')['model_dict']) result = predict(sent, model) self.ui.plainTextEdit_2.appendPlainText(result) else: QMessageBox.about(self.window, 'warnning:change the src and target', 'will coming') def handleCalc2(self): self.ui.plainTextEdit_2.clear() def handleCalc3(self): self.pattern = 1 def handleCalc4(self): self.pattern = 2
def __init__(self, Script:QMainWindow): # Set window parameters Script.setWindowTitle("ASL Tools - Script") Script.setWindowFlag(Qt.Window) # Main frame frame = QWidget(Script) self.h_layout = QHBoxLayout(frame) # Menubar menubar = Script.menuBar() menu_file:QMenu = menubar.addMenu("Fichier") self.action_file_new = QAction("Nouveau", menubar) self.action_file_new.setIcon(QIcon(":/images/new-file.svg")) self.action_file_new.setShortcut("Ctrl+N") menu_file.addAction(self.action_file_new) self.action_file_open = QAction("Ouvrir", menubar) self.action_file_open.setIcon(QIcon(":/images/open-file.svg")) self.action_file_open.setShortcut("Ctrl+O") menu_file.addAction(self.action_file_open) self.action_file_save = QAction("Enregistrer", menubar) self.action_file_save.setIcon(QIcon(":/images/save.svg")) self.action_file_save.setShortcut("Ctrl+S") menu_file.addAction(self.action_file_save) self.action_file_saveas = QAction("Enregistrer sous", menubar) self.action_file_saveas.setIcon(QIcon(":/images/save-as.svg")) self.action_file_saveas.setShortcut("Ctrl+Shift+S") menu_file.addAction(self.action_file_saveas) menu_file.addSeparator() self.action_file_export = QAction("Exporter", menubar) self.action_file_export.setIcon(QIcon(":/images/export.svg")) menu_file.addAction(self.action_file_export) menu_file.addSeparator() self.action_file_quit = QAction("Quitter", menubar) self.action_file_quit.setIcon(QIcon(":/images/quit.svg")) menu_file.addAction(self.action_file_quit) menu_edit:QMenu = menubar.addMenu("Edition") self.action_edit_copy = QAction("Copier", menubar) self.action_edit_copy.setIcon(QIcon(":/images/copy.svg")) self.action_edit_copy.setShortcut("Alt+C") menu_edit.addAction(self.action_edit_copy) self.action_edit_paste = QAction("Coller", menubar) self.action_edit_paste.setIcon(QIcon(":/images/paste.svg")) self.action_edit_paste.setShortcut("Alt+V") menu_edit.addAction(self.action_edit_paste) # Spacer spacer = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) self.h_layout.addItem(spacer) # Main grid self.grid_layout = QtWidgets.QGridLayout() # Filename self.label_file = QtWidgets.QLabel(frame) self.label_file.setAlignment(QtCore.Qt.AlignCenter) self.label_file.setObjectName("label_file") self.grid_layout.addWidget(self.label_file, 0, 0, 1, 2) # Action widgets self.h_layout_actions = QtWidgets.QHBoxLayout() self.btn_add = QtWidgets.QToolButton(frame) self.btn_add.setEnabled(True) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/images/add.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.btn_add.setIcon(icon) self.btn_add.setIconSize(QtCore.QSize(24, 24)) self.btn_add.setAutoRaise(True) self.h_layout_actions.addWidget(self.btn_add) self.btn_remove = QtWidgets.QToolButton(frame) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/images/remove.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.btn_remove.setIcon(icon) self.btn_remove.setIconSize(QtCore.QSize(24, 24)) self.btn_remove.setAutoRaise(True) self.h_layout_actions.addWidget(self.btn_remove) self.btn_move_up = QtWidgets.QToolButton(frame) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/images/arrow-up.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.btn_move_up.setIcon(icon) self.btn_move_up.setIconSize(QtCore.QSize(24, 24)) self.btn_move_up.setAutoRaise(True) self.h_layout_actions.addWidget(self.btn_move_up) self.btn_move_down = QtWidgets.QToolButton(frame) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/images/arrow-down.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.btn_move_down.setIcon(icon) self.btn_move_down.setIconSize(QtCore.QSize(24, 24)) self.btn_move_down.setAutoRaise(True) self.h_layout_actions.addWidget(self.btn_move_down) spacer = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) self.h_layout_actions.addItem(spacer) self.grid_layout.addLayout(self.h_layout_actions, 1, 0, 1, 1) # List widget self.list = QtWidgets.QListWidget(frame) self.grid_layout.addWidget(self.list, 2, 0, 1, 1) # Grid self.grid_layout_form = QtWidgets.QGridLayout() # Compliance self.label_compliance = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_compliance, 0, 0, 1, 1) self.compliance = QtWidgets.QSpinBox(frame) self.compliance.setMaximum(500) self.grid_layout_form.addWidget(self.compliance, 0, 1, 1, 1) # Resistance self.label_resistance = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_resistance, 1, 0, 1, 1) self.resistance = QtWidgets.QSpinBox(frame) self.resistance.setMaximum(500) self.grid_layout_form.addWidget(self.resistance, 1, 1, 1, 1) # Respiratory rate self.label_respi_rate = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_respi_rate, 2, 0, 1, 1) self.respi_rate = QtWidgets.QSpinBox(frame) self.respi_rate.setMaximum(500) self.grid_layout_form.addWidget(self.respi_rate, 2, 1, 1, 1) # Spacer spacerItem1 = QtWidgets.QSpacerItem(20, 30, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) self.grid_layout_form.addItem(spacerItem1, 4, 0, 1, 1) # Pmus insp self.label_i_pmus = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_i_pmus, 5, 0, 1, 1) self.i_pmus = QtWidgets.QSpinBox(frame) self.i_pmus.setMaximum(100) self.grid_layout_form.addWidget(self.i_pmus, 5, 1, 1, 1) # Pmus insp inc self.label_i_pmus_inc = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_i_pmus_inc, 6, 0, 1, 1) self.i_pmus_inc = QtWidgets.QSpinBox(frame) self.i_pmus_inc.setMaximum(100) self.grid_layout_form.addWidget(self.i_pmus_inc, 6, 1, 1, 1) # Pmus insp hold self.label_i_pmus_hld = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_i_pmus_hld, 7, 0, 1, 1) self.i_pmus_hld = QtWidgets.QSpinBox(frame) self.i_pmus_hld.setMaximum(100) self.grid_layout_form.addWidget(self.i_pmus_hld, 7, 1, 1, 1) # Pmus insp rel self.label_i_pmus_rel = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_i_pmus_rel, 8, 0, 1, 1) self.i_pmus_rel = QtWidgets.QSpinBox(frame) self.i_pmus_rel.setMaximum(100) self.grid_layout_form.addWidget(self.i_pmus_rel, 8, 1, 1, 1) # Spacer spacerItem4 = QtWidgets.QSpacerItem(20, 30, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) self.grid_layout_form.addItem(spacerItem4, 9, 0, 1, 1) # Pmus exp self.label_e_pmus = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_e_pmus, 10, 0, 1, 1) self.e_pmus = QtWidgets.QSpinBox(frame) self.e_pmus.setMaximum(100) self.grid_layout_form.addWidget(self.e_pmus, 10, 1, 1, 1) # Pmus exp inc self.label_e_pmus_inc = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_e_pmus_inc, 11, 0, 1, 1) self.e_pmus_inc = QtWidgets.QSpinBox(frame) self.e_pmus_inc.setMaximum(100) self.grid_layout_form.addWidget(self.e_pmus_inc, 11, 1, 1, 1) # Pmus exp hold self.label_e_pmus_hld = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_e_pmus_hld, 12, 0, 1, 1) self.e_pmus_hld = QtWidgets.QSpinBox(frame) self.e_pmus_hld.setMaximum(100) self.grid_layout_form.addWidget(self.e_pmus_hld, 12, 1, 1, 1) # Pmus exp rel self.label_e_pmus_rel = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_e_pmus_rel, 13, 0, 1, 1) self.e_pmus_rel = QtWidgets.QSpinBox(frame) self.e_pmus_rel.setMaximum(100) self.grid_layout_form.addWidget(self.e_pmus_rel, 13, 1, 1, 1) # Spacer spacerItem3 = QtWidgets.QSpacerItem(20, 30, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) self.grid_layout_form.addItem(spacerItem3, 14, 0, 1, 1) # CRF self.label_crf = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_crf, 15, 0, 1, 1) self.crf = QtWidgets.QDoubleSpinBox(frame) self.crf.setDecimals(1) self.crf.setSingleStep(0.1) self.grid_layout_form.addWidget(self.crf, 15, 1, 1, 1) # Spacer spacerItem2 = QtWidgets.QSpacerItem(20, 30, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred) self.grid_layout_form.addItem(spacerItem2, 16, 0, 1, 1) # Repetions self.label_repetitions = QtWidgets.QLabel(frame) self.grid_layout_form.addWidget(self.label_repetitions, 17, 0, 1, 1) self.repetitions = QtWidgets.QSpinBox(frame) self.repetitions.setMaximum(9999) self.grid_layout_form.addWidget(self.repetitions, 17, 1, 1, 1) self.label_repetitions_total = QtWidgets.QLabel(frame) self.label_repetitions_total.setMinimumWidth(30) self.grid_layout_form.addWidget(self.label_repetitions_total, 17, 2, 1, 1) # Spacer spacerItem2 = QtWidgets.QSpacerItem(20, 30, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) self.grid_layout_form.addItem(spacerItem2, 18, 0, 1, 1) # Set form layout in the main grid self.grid_layout.addLayout(self.grid_layout_form, 2, 1, 1, 1) # Progress bar self.progress = QProgressBar(frame) self.progress.setMaximumHeight(10) self.progress.setTextVisible(False) self.grid_layout.addWidget(self.progress, 3, 0, 1, 2) # Spacer spacer = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) self.grid_layout.addItem(spacer, 4, 0, 1, 2) self.h_layout.addLayout(self.grid_layout) spacer = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.h_layout.addItem(spacer) # Set size and position w, h = self.h_layout.sizeHint().toTuple() w_s, h_s = QApplication.primaryScreen().size().toTuple() x = round(w_s/2 - w/2) y = round(h_s/2 - h/2) Script.setCentralWidget(frame) Script.resize(w, h) Script.move(x, y) self.retranslateUi(Script) QtCore.QMetaObject.connectSlotsByName(Script) Script.setTabOrder(self.btn_add, self.btn_remove) Script.setTabOrder(self.btn_remove, self.btn_move_up) Script.setTabOrder(self.btn_move_up, self.btn_move_down) Script.setTabOrder(self.btn_move_down, self.list) Script.setTabOrder(self.list, self.compliance) Script.setTabOrder(self.compliance, self.resistance) Script.setTabOrder(self.resistance, self.respi_rate) Script.setTabOrder(self.respi_rate, self.i_pmus) Script.setTabOrder(self.i_pmus, self.i_pmus_inc) Script.setTabOrder(self.i_pmus_inc, self.i_pmus_hld) Script.setTabOrder(self.i_pmus_hld, self.i_pmus_rel) Script.setTabOrder(self.i_pmus_rel, self.e_pmus) Script.setTabOrder(self.e_pmus, self.e_pmus_inc) Script.setTabOrder(self.e_pmus_inc, self.e_pmus_hld) Script.setTabOrder(self.e_pmus_hld, self.e_pmus_rel) Script.setTabOrder(self.e_pmus_rel, self.crf) Script.setTabOrder(self.crf, self.repetitions)
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # @Author : 影子 # @Time : 2020-10-25 18:25 # @Software: PyCharm # @File : PySide2_01.py # 用户输入一段文本包含:员工姓名,薪资,年龄。把薪资在 2万 以上、以下的人员名单分别打印出来 import os from PySide2.QtWidgets import QApplication, QMainWindow, QPushButton, QPlainTextEdit # 增加环境变量 # https://blog.csdn.net/liuzhuchen/article/details/101348454?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5.add_param_isCf&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5.add_param_isCf # envpath = r'D:\ProgramData\Anaconda3\Lib\site-packages\PySide2\plugins\platforms' # os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = envpath app = QApplication([]) # 初始化操作提供整个图形界面程序的底层管理功能:初始化、程序入口参数的处理,用户事件等 window = QMainWindow() window.resize(500, 400) window.move(300, 310) window.setWindowTitle("薪资统计") textEdit = QPlainTextEdit(window) textEdit.setPlaceholderText("请输入薪资表") textEdit.move(10, 25) textEdit.resize(300, 350) button = QPushButton("统计", window) button.move(380, 80) window.show() app.exec_()
def __init__(self, BigScript: QMainWindow): # Set Window parameters BigScript.setWindowTitle("ASL Tools - Big Script") BigScript.setWindowFlag(Qt.Window) # Main frame frame = QWidget(BigScript) self.h_layout = QHBoxLayout(frame) # Menubar menubar = BigScript.menuBar() menu_file: QMenu = menubar.addMenu("Fichier") self.action_file_new = QAction("Nouveau", menubar) self.action_file_new.setIcon(QIcon(":/images/new-file.svg")) self.action_file_new.setShortcut("Ctrl+N") menu_file.addAction(self.action_file_new) self.action_file_save = QAction("Enregistrer", menubar) self.action_file_save.setIcon(QIcon(":/images/save.svg")) self.action_file_save.setShortcut("Ctrl+S") menu_file.addAction(self.action_file_save) self.action_file_saveas = QAction("Enregistrer sous", menubar) self.action_file_saveas.setIcon(QIcon(":/images/save-as.svg")) self.action_file_saveas.setShortcut("Ctrl+Shift+S") menu_file.addAction(self.action_file_saveas) menu_file.addSeparator() self.action_file_export = QAction("Exporter", menubar) self.action_file_export.setIcon(QIcon(":/images/export.svg")) menu_file.addAction(self.action_file_export) menu_file.addSeparator() self.action_file_quit = QAction("Quitter", menubar) self.action_file_quit.setIcon(QIcon(":/images/quit.svg")) menu_file.addAction(self.action_file_quit) # Spacer spacerItem = QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.h_layout.addItem(spacerItem) # Grid layout self.gridLayout = QtWidgets.QGridLayout() self.gridLayout.setSpacing(15) # File self.label_file = QtWidgets.QLabel(frame) self.label_file.setTextFormat(QtCore.Qt.PlainText) self.label_file.setAlignment(QtCore.Qt.AlignCenter) self.label_file.setObjectName("label_file") self.gridLayout.addWidget(self.label_file, 0, 0, 1, 4) # Header self.label_from = QLabel(frame) self.gridLayout.addWidget(self.label_from, 1, 1, 1, 1) self.label_to = QLabel(frame) self.gridLayout.addWidget(self.label_to, 1, 2, 1, 1) self.label_step = QLabel(frame) self.gridLayout.addWidget(self.label_step, 1, 3, 1, 1) # Resistance self.label_r = QLabel(frame) self.gridLayout.addWidget(self.label_r, 2, 0, 1, 1) self.r_from = QtWidgets.QSpinBox(frame) self.r_from.setObjectName("grid-spin") self.r_from.setMinimum(0) self.r_from.setMaximum(200) self.gridLayout.addWidget(self.r_from, 2, 1, 1, 1) self.r_to = QtWidgets.QSpinBox(frame) self.r_to.setObjectName("grid-spin") self.r_to.setMinimum(0) self.r_to.setMaximum(200) self.gridLayout.addWidget(self.r_to, 2, 2, 1, 1) self.r_step = QtWidgets.QSpinBox(frame) self.r_step.setObjectName("grid-spin") self.r_step.setMinimum(1) self.gridLayout.addWidget(self.r_step, 2, 3, 1, 1) # Compliance self.label_c = QLabel(frame) self.gridLayout.addWidget(self.label_c, 3, 0, 1, 1) self.c_from = QtWidgets.QSpinBox(frame) self.c_from.setObjectName("grid-spin") self.c_from.setMinimum(0) self.c_from.setMaximum(200) self.gridLayout.addWidget(self.c_from, 3, 1, 1, 1) self.c_to = QtWidgets.QSpinBox(frame) self.c_to.setObjectName("grid-spin") self.c_to.setMinimum(0) self.c_to.setMaximum(200) self.gridLayout.addWidget(self.c_to, 3, 2, 1, 1) self.c_step = QtWidgets.QSpinBox(frame) self.c_step.setObjectName("grid-spin") self.c_step.setMinimum(1) self.gridLayout.addWidget(self.c_step, 3, 3, 1, 1) # Breath rate self.label_br = QLabel(frame) self.gridLayout.addWidget(self.label_br, 4, 0, 1, 1) self.br_from = QtWidgets.QSpinBox(frame) self.br_from.setObjectName("grid-spin") self.br_from.setMinimum(1) self.br_from.setMaximum(100) self.gridLayout.addWidget(self.br_from, 4, 1, 1, 1) self.br_to = QtWidgets.QSpinBox(frame) self.br_to.setObjectName("grid-spin") self.br_to.setMinimum(1) self.br_to.setMaximum(100) self.gridLayout.addWidget(self.br_to, 4, 2, 1, 1) self.br_step = QtWidgets.QSpinBox(frame) self.br_step.setObjectName("grid-spin") self.br_step.setMinimum(1) self.gridLayout.addWidget(self.br_step, 4, 3, 1, 1) # Pmus self.label_i_pmus = QLabel(frame) self.gridLayout.addWidget(self.label_i_pmus, 5, 0, 1, 1) self.i_pmus_from = QtWidgets.QSpinBox(frame) self.i_pmus_from.setObjectName("grid-spin") self.i_pmus_from.setMinimum(0) self.i_pmus_from.setMaximum(100) self.gridLayout.addWidget(self.i_pmus_from, 5, 1, 1, 1) self.i_pmus_to = QtWidgets.QSpinBox(frame) self.i_pmus_to.setObjectName("grid-spin") self.i_pmus_to.setMinimum(0) self.i_pmus_to.setMaximum(100) self.gridLayout.addWidget(self.i_pmus_to, 5, 2, 1, 1) self.i_pmus_step = QtWidgets.QSpinBox(frame) self.i_pmus_step.setObjectName("grid-spin") self.i_pmus_step.setMinimum(1) self.gridLayout.addWidget(self.i_pmus_step, 5, 3, 1, 1) # Pmus increase self.label_i_pmus_inc = QLabel(frame) self.gridLayout.addWidget(self.label_i_pmus_inc, 6, 0, 1, 1) self.i_pmus_inc_from = QtWidgets.QSpinBox(frame) self.i_pmus_inc_from.setObjectName("grid-spin") self.i_pmus_inc_from.setMinimum(0) self.i_pmus_inc_from.setMaximum(100) self.gridLayout.addWidget(self.i_pmus_inc_from, 6, 1, 1, 1) self.i_pmus_inc_to = QtWidgets.QSpinBox(frame) self.i_pmus_inc_to.setObjectName("grid-spin") self.i_pmus_inc_to.setMinimum(0) self.i_pmus_inc_to.setMaximum(100) self.gridLayout.addWidget(self.i_pmus_inc_to, 6, 2, 1, 1) self.i_pmus_inc_step = QtWidgets.QSpinBox(frame) self.i_pmus_inc_step.setObjectName("grid-spin") self.i_pmus_inc_step.setMinimum(1) self.gridLayout.addWidget(self.i_pmus_inc_step, 6, 3, 1, 1) # Pmus hold self.label_i_pmus_hld = QLabel(frame) self.gridLayout.addWidget(self.label_i_pmus_hld, 7, 0, 1, 1) self.i_pmus_hld_from = QtWidgets.QSpinBox(frame) self.i_pmus_hld_from.setObjectName("grid-spin") self.i_pmus_hld_from.setMinimum(0) self.i_pmus_hld_from.setMaximum(100) self.gridLayout.addWidget(self.i_pmus_hld_from, 7, 1, 1, 1) self.i_pmus_hld_to = QtWidgets.QSpinBox(frame) self.i_pmus_hld_to.setObjectName("grid-spin") self.i_pmus_hld_to.setMinimum(0) self.i_pmus_hld_to.setMaximum(100) self.gridLayout.addWidget(self.i_pmus_hld_to, 7, 2, 1, 1) self.i_pmus_hld_step = QtWidgets.QSpinBox(frame) self.i_pmus_hld_step.setObjectName("grid-spin") self.i_pmus_hld_step.setMinimum(1) self.gridLayout.addWidget(self.i_pmus_hld_step, 7, 3, 1, 1) # Pmus hold self.label_i_pmus_rel = QLabel(frame) self.gridLayout.addWidget(self.label_i_pmus_rel, 8, 0, 1, 1) self.i_pmus_rel_from = QtWidgets.QSpinBox(frame) self.i_pmus_rel_from.setObjectName("grid-spin") self.i_pmus_rel_from.setMinimum(0) self.i_pmus_rel_from.setMaximum(100) self.gridLayout.addWidget(self.i_pmus_rel_from, 8, 1, 1, 1) self.i_pmus_rel_to = QtWidgets.QSpinBox(frame) self.i_pmus_rel_to.setObjectName("grid-spin") self.i_pmus_rel_to.setMinimum(0) self.i_pmus_rel_to.setMaximum(100) self.gridLayout.addWidget(self.i_pmus_rel_to, 8, 2, 1, 1) self.i_pmus_rel_step = QtWidgets.QSpinBox(frame) self.i_pmus_rel_step.setObjectName("grid-spin") self.i_pmus_rel_step.setMinimum(1) self.gridLayout.addWidget(self.i_pmus_rel_step, 8, 3, 1, 1) # Repetitions self.label_n_cycles = QLabel(frame) self.gridLayout.addWidget(self.label_n_cycles, 9, 0, 1, 1) self.n_cycles = QtWidgets.QSpinBox(frame) self.n_cycles.setObjectName("grid-spin") self.n_cycles.setMinimum(0) self.n_cycles.setMaximum(100) self.gridLayout.addWidget(self.n_cycles, 9, 1, 1, 1) # Informations separator = QtWidgets.QFrame(frame) separator.setFrameShape(QtWidgets.QFrame.HLine) separator.setFrameShadow(QtWidgets.QFrame.Sunken) self.gridLayout.addWidget(separator, 10, 0, 1, 4) self.label_tot_simus = QLabel(frame) self.gridLayout.addWidget(self.label_tot_simus, 11, 0, 1, 1) self.tot_simus = QLabel(frame) self.gridLayout.addWidget(self.tot_simus, 11, 1, 1, 1) self.label_tot_time = QLabel(frame) self.gridLayout.addWidget(self.label_tot_time, 12, 0, 1, 3) self.tot_time = QLabel(frame) self.gridLayout.addWidget(self.tot_time, 12, 1, 1, 3) # Progress self.progress = QProgressBar(frame) self.progress.setMaximumHeight(10) self.progress.setTextVisible(False) self.gridLayout.addWidget(self.progress, 13, 0, 1, 4) # Spacer spacerItem = QSpacerItem(40, 20, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) self.gridLayout.addItem(spacerItem, 14, 0, 1, 4) self.h_layout.addLayout(self.gridLayout) spacerItem5 = QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.h_layout.addItem(spacerItem5) # Set size and position w, h = self.h_layout.sizeHint().toTuple() w_s, h_s = QApplication.primaryScreen().size().toTuple() x = round(w_s / 2 - w / 2) y = round(h_s / 2 - h / 2) BigScript.setCentralWidget(frame) BigScript.resize(w, h) BigScript.move(x, y) self.retranslateUi(BigScript) QtCore.QMetaObject.connectSlotsByName(BigScript)
from PySide2.QtWidgets import QApplication, QMainWindow, QPushButton, QPlainTextEdit app = QApplication([]) window = QMainWindow() window.resize(500, 400) window.move(300, 310) # 显示在显示器的什么位置 300 从左到右 310 从上到下 window.setWindowTitle('薪资统计') textEdit = QPlainTextEdit(window) textEdit.setPlaceholderText("请输入薪资表") textEdit.move(10, 25) textEdit.resize(300, 350) button = QPushButton('统计', window) button.move(380, 80) window.show() app.exec_()
sock = socket(AF_INET, SOCK_STREAM) # 实例化socket sock.settimeout(int(time)) # 限制重连时间 sock.connect((ip, int(port))) # 对对应主机的对应端口发起连接 result = f'{port}端口开放' sock.close() # 关闭连接 except Exception as e: result = f'{port}端口关闭' win.append(result) #QMessageBox.about(window,'扫描结果',result) app = QApplication([]) window = QMainWindow() window.resize(500, 270) window.move(300, 300) window.setWindowTitle('端口扫描') textEdit1 = QPlainTextEdit(window) #textEdit1.setPlaceholderText("输入IP") textEdit1.move(10, 50) textEdit1.resize(200, 40) textEdit2 = QPlainTextEdit(window) #textEdit2.setPlaceholderText("输入端口") textEdit2.move(10, 130) textEdit2.resize(200, 40) textEdit3 = QPlainTextEdit(window) #textEdit3.setPlaceholderText("超时(毫秒)") textEdit3.move(10, 210)
def __init__(self, Settings: QMainWindow): # Set window parameters Settings.setWindowTitle("ASL Tools - Settings") Settings.setWindowFlag(Qt.Window) icon_size = QSize(48, 48) # Main frame frame = QWidget() frame.setObjectName("mainwindow") self.v_layout = QVBoxLayout(frame) # Select tool window location self.label_location = QLabel() self.v_layout.addWidget(self.label_location) self.group_corner = QButtonGroup() self.grid_layout = QGridLayout() # Top left corner self.btn_corner_tl = QPushButton() self.btn_corner_tl.setObjectName("top-left") self.btn_corner_tl.setIcon(QIcon(":/images/corner-tl.svg")) self.btn_corner_tl.setIconSize(QSize(32, 32)) self.btn_corner_tl.setCheckable(True) self.group_corner.addButton(self.btn_corner_tl) self.grid_layout.addWidget(self.btn_corner_tl, 0, 1) # Top right corner self.btn_corner_tr = QPushButton() self.btn_corner_tr.setObjectName("top-right") self.btn_corner_tr.setIcon(QIcon(":/images/corner-tr.svg")) self.btn_corner_tr.setIconSize(QSize(32, 32)) self.btn_corner_tr.setCheckable(True) self.group_corner.addButton(self.btn_corner_tr) self.grid_layout.addWidget(self.btn_corner_tr, 0, 2) # bottom left corner self.btn_corner_bl = QPushButton() self.btn_corner_bl.setObjectName("bottom-left") self.btn_corner_bl.setIcon(QIcon(":/images/corner-bl.svg")) self.btn_corner_bl.setIconSize(QSize(32, 32)) self.btn_corner_bl.setCheckable(True) self.group_corner.addButton(self.btn_corner_bl) self.grid_layout.addWidget(self.btn_corner_bl, 1, 1) # Bottom right corner self.btn_corner_br = QPushButton() self.btn_corner_br.setObjectName("bottom-right") self.btn_corner_br.setIcon(QIcon(":/images/corner-br.svg")) self.btn_corner_br.setIconSize(QSize(32, 32)) self.btn_corner_br.setCheckable(True) self.group_corner.addButton(self.btn_corner_br) self.grid_layout.addWidget(self.btn_corner_br, 1, 2) # Spacers spacer = QSpacerItem(20, 20) self.grid_layout.addItem(spacer, 0, 0) spacer = QSpacerItem(20, 20, QSizePolicy.Expanding, QSizePolicy.Minimum) self.grid_layout.addItem(spacer, 0, 3) self.v_layout.addLayout(self.grid_layout) # Window fit the layout Settings.setCentralWidget(frame) # Set size and position w, h = self.v_layout.sizeHint().toTuple() w_s, h_s = QApplication.primaryScreen().size().toTuple() x = round(w_s / 2 - w / 2) y = round(h_s / 2 - h / 2) Settings.setCentralWidget(frame) Settings.resize(w, h) Settings.move(x, y) self.retranslateUi(Settings) QtCore.QMetaObject.connectSlotsByName(Settings)
def __init__(self, ModelVr3:QMainWindow): # Set Window parameters ModelVr3.setWindowTitle("ASL Tools - Tableau de bord") ModelVr3.setWindowFlag(Qt.Window) # Main frame frame = QtWidgets.QWidget(ModelVr3) self.h_layout = QHBoxLayout(frame) # Menubar menubar = ModelVr3.menuBar() menu_file:QMenu = menubar.addMenu("Fichier") self.action_file_new = QAction("Nouveau", menubar) self.action_file_new.setIcon(QIcon(":/images/new-file.svg")) self.action_file_new.setShortcut("Ctrl+N") menu_file.addAction(self.action_file_new) self.action_file_open = QAction("Ouvrir", menubar) self.action_file_open.setIcon(QIcon(":/images/open-file.svg")) self.action_file_open.setShortcut("Ctrl+O") menu_file.addAction(self.action_file_open) self.action_file_save = QAction("Enregistrer", menubar) self.action_file_save.setIcon(QIcon(":/images/save.svg")) self.action_file_save.setShortcut("Ctrl+S") menu_file.addAction(self.action_file_save) self.action_file_saveas = QAction("Enregistrer sous", menubar) self.action_file_saveas.setIcon(QIcon(":/images/save-as.svg")) self.action_file_saveas.setShortcut("Ctrl+Shift+S") menu_file.addAction(self.action_file_saveas) menu_file.addSeparator() self.action_file_export = QAction("Exporter", menubar) self.action_file_export.setIcon(QIcon(":/images/export.svg")) menu_file.addAction(self.action_file_export) menu_file.addSeparator() self.action_file_quit = QAction("Quitter", menubar) self.action_file_quit.setIcon(QIcon(":/images/quit.svg")) menu_file.addAction(self.action_file_quit) # self.h_layout.setMenuBar(menubar) # Spacer spacerItem = QSpacerItem(20, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.h_layout.addItem(spacerItem) self.verticalLayout = QtWidgets.QVBoxLayout() self.verticalLayout.setContentsMargins(0, 0, 0, 0) self.verticalLayout.setObjectName("verticalLayout") self.label_file = QtWidgets.QLabel(frame) self.label_file.setAlignment(QtCore.Qt.AlignCenter) self.label_file.setObjectName("label_file") self.verticalLayout.addWidget(self.label_file) self.horizontalLayout_2 = QtWidgets.QHBoxLayout() self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.check_time_constant = QtWidgets.QCheckBox(frame) self.check_time_constant.setCheckable(True) self.check_time_constant.setChecked(True) self.check_time_constant.setObjectName("check_time_constant") self.horizontalLayout_2.addWidget(self.check_time_constant) self.label_repetitions = QtWidgets.QLabel(frame) self.label_repetitions.setObjectName("label_repetitions") self.horizontalLayout_2.addWidget(self.label_repetitions) self.verticalLayout.addLayout(self.horizontalLayout_2) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") self.btn_add = QtWidgets.QToolButton(frame) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap(":/images/add.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.btn_add.setIcon(icon) self.btn_add.setIconSize(QtCore.QSize(24, 24)) self.btn_add.setAutoRaise(True) self.btn_add.setObjectName("btn_add") self.horizontalLayout.addWidget(self.btn_add) self.btn_remove = QtWidgets.QToolButton(frame) icon1 = QtGui.QIcon() icon1.addPixmap(QtGui.QPixmap(":/images/remove.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.btn_remove.setIcon(icon1) self.btn_remove.setIconSize(QtCore.QSize(24, 24)) self.btn_remove.setAutoRaise(True) self.btn_remove.setObjectName("btn_remove") self.horizontalLayout.addWidget(self.btn_remove) self.btn_move_up = QtWidgets.QToolButton(frame) icon2 = QtGui.QIcon() icon2.addPixmap(QtGui.QPixmap(":/images/arrow-up.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.btn_move_up.setIcon(icon2) self.btn_move_up.setIconSize(QtCore.QSize(24, 24)) self.btn_move_up.setAutoRaise(True) self.btn_move_up.setObjectName("btn_move_up") self.horizontalLayout.addWidget(self.btn_move_up) self.btn_move_down = QtWidgets.QToolButton(frame) icon3 = QtGui.QIcon() icon3.addPixmap(QtGui.QPixmap(":/images/arrow-down.svg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.btn_move_down.setIcon(icon3) self.btn_move_down.setIconSize(QtCore.QSize(24, 24)) self.btn_move_down.setAutoRaise(True) self.btn_move_down.setObjectName("btn_move_down") self.horizontalLayout.addWidget(self.btn_move_down) spacerItem = QtWidgets.QSpacerItem(20, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem) self.verticalLayout.addLayout(self.horizontalLayout) self.tree = QtWidgets.QTreeWidget(frame) self.tree.setMinimumSize(QtCore.QSize(420, 500)) self.tree.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) self.verticalLayout.addWidget(self.tree) spacerItem = QSpacerItem(20, 20, QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Preferred) self.verticalLayout.addItem(spacerItem) self.h_layout.addLayout(self.verticalLayout) spacer = QSpacerItem(20, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.h_layout.addItem(spacer) # Set size and position w, h = self.h_layout.sizeHint().toTuple() w_s, h_s = QApplication.primaryScreen().size().toTuple() x = round(w_s/2 - w/2) y = round(h_s/2 - h/2) ModelVr3.setCentralWidget(frame) ModelVr3.resize(w, h) ModelVr3.move(x, y) self.retranslateUi(ModelVr3) QtCore.QMetaObject.connectSlotsByName(ModelVr3)
def __init__(self, Dashboard: QMainWindow): # Set Window parameters Dashboard.setWindowTitle("ASL Tools - Tableau de bord") Dashboard.setWindowFlag(Qt.Window) # Main frame frame = QWidget(Dashboard) self.h_layout = QHBoxLayout(frame) # Menubar menubar = Dashboard.menuBar() menu_file: QMenu = menubar.addMenu("Fichier") self.action_file_new = QAction("Nouveau", menubar) self.action_file_new.setIcon(QIcon(":/images/new-file.svg")) self.action_file_new.setShortcut("Ctrl+N") menu_file.addAction(self.action_file_new) self.action_file_open = QAction("Ouvrir", menubar) self.action_file_open.setIcon(QIcon(":/images/open-file.svg")) self.action_file_open.setShortcut("Ctrl+O") menu_file.addAction(self.action_file_open) self.action_file_save = QAction("Enregistrer", menubar) self.action_file_save.setIcon(QIcon(":/images/save.svg")) self.action_file_save.setShortcut("Ctrl+S") menu_file.addAction(self.action_file_save) self.action_file_saveas = QAction("Enregistrer sous", menubar) self.action_file_saveas.setIcon(QIcon(":/images/save-as.svg")) self.action_file_saveas.setShortcut("Ctrl+Shift+S") menu_file.addAction(self.action_file_saveas) menu_file.addSeparator() self.action_file_export = QAction("Exporter", menubar) self.action_file_export.setIcon(QIcon(":/images/export.svg")) menu_file.addAction(self.action_file_export) menu_file.addSeparator() self.action_file_quit = QAction("Quitter", menubar) self.action_file_quit.setIcon(QIcon(":/images/quit.svg")) menu_file.addAction(self.action_file_quit) menu_edit: QMenu = menubar.addMenu("Edition") self.action_edit_copy = QAction("Copier", menubar) self.action_edit_copy.setIcon(QIcon(":/images/copy.svg")) self.action_edit_copy.setShortcut("Alt+C") menu_edit.addAction(self.action_edit_copy) self.action_edit_paste = QAction("Coller", menubar) self.action_edit_paste.setIcon(QIcon(":/images/paste.svg")) self.action_edit_paste.setShortcut("Alt+V") menu_edit.addAction(self.action_edit_paste) self.h_layout.setMenuBar(menubar) # Spacer spacerItem = QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.h_layout.addItem(spacerItem) self.gridLayout = QtWidgets.QGridLayout() self.list = QtWidgets.QListWidget(frame) self.list.setObjectName("list") self.gridLayout.addWidget(self.list, 2, 0, 1, 1) self.gridLayout_4 = QtWidgets.QGridLayout() self.gridLayout_4.setObjectName("gridLayout_4") self.label_e_pmus_hld = QtWidgets.QLabel(frame) self.label_e_pmus_hld.setMinimumSize(QtCore.QSize(0, 20)) self.label_e_pmus_hld.setObjectName("label_e_pmus_hld") self.gridLayout_4.addWidget(self.label_e_pmus_hld, 14, 0, 1, 1) self.e_pmus_inc = QtWidgets.QSpinBox(frame) self.e_pmus_inc.setMaximum(100) self.e_pmus_inc.setObjectName("e_pmus_inc") self.gridLayout_4.addWidget(self.e_pmus_inc, 13, 1, 1, 1) self.resistance = QtWidgets.QSpinBox(frame) self.resistance.setMaximum(500) self.resistance.setObjectName("resistance") self.gridLayout_4.addWidget(self.resistance, 3, 1, 1, 1) self.label_e_pmus = QtWidgets.QLabel(frame) self.label_e_pmus.setMinimumSize(QtCore.QSize(0, 20)) self.label_e_pmus.setObjectName("label_e_pmus") self.gridLayout_4.addWidget(self.label_e_pmus, 12, 0, 1, 1) self.respi_rate = QtWidgets.QSpinBox(frame) self.respi_rate.setMaximum(500) self.respi_rate.setObjectName("respi_rate") self.gridLayout_4.addWidget(self.respi_rate, 4, 1, 1, 1) self.e_pmus_rel = QtWidgets.QSpinBox(frame) self.e_pmus_rel.setMaximum(100) self.e_pmus_rel.setObjectName("e_pmus_rel") self.gridLayout_4.addWidget(self.e_pmus_rel, 15, 1, 1, 1) self.e_pmus = QtWidgets.QSpinBox(frame) self.e_pmus.setMaximum(100) self.e_pmus.setObjectName("e_pmus") self.gridLayout_4.addWidget(self.e_pmus, 12, 1, 1, 1) self.label_e_pmus_inc = QtWidgets.QLabel(frame) self.label_e_pmus_inc.setMinimumSize(QtCore.QSize(0, 20)) self.label_e_pmus_inc.setObjectName("label_e_pmus_inc") self.gridLayout_4.addWidget(self.label_e_pmus_inc, 13, 0, 1, 1) self.e_pmus_hld = QtWidgets.QSpinBox(frame) self.e_pmus_hld.setMaximum(100) self.e_pmus_hld.setObjectName("e_pmus_hld") self.gridLayout_4.addWidget(self.e_pmus_hld, 14, 1, 1, 1) self.enabled = QtWidgets.QCheckBox(frame) self.enabled.setText("") self.enabled.setObjectName("enabled") self.gridLayout_4.addWidget(self.enabled, 0, 1, 1, 1) spacerItem1 = QSpacerItem(20, 30, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) self.gridLayout_4.addItem(spacerItem1, 16, 0, 1, 1) self.label_i_pmus_inc = QtWidgets.QLabel(frame) self.label_i_pmus_inc.setMinimumSize(QtCore.QSize(0, 20)) self.label_i_pmus_inc.setObjectName("label_i_pmus_inc") self.gridLayout_4.addWidget(self.label_i_pmus_inc, 8, 0, 1, 1) self.label_i_pmus_hld = QtWidgets.QLabel(frame) self.label_i_pmus_hld.setMinimumSize(QtCore.QSize(0, 20)) self.label_i_pmus_hld.setObjectName("label_i_pmus_hld") self.gridLayout_4.addWidget(self.label_i_pmus_hld, 9, 0, 1, 1) self.label_i_pmus = QtWidgets.QLabel(frame) self.label_i_pmus.setMinimumSize(QtCore.QSize(0, 20)) self.label_i_pmus.setObjectName("label_i_pmus") self.gridLayout_4.addWidget(self.label_i_pmus, 7, 0, 1, 1) spacerItem2 = QSpacerItem(20, 30, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) self.gridLayout_4.addItem(spacerItem2, 6, 0, 1, 1) self.i_pmus_inc = QtWidgets.QSpinBox(frame) self.i_pmus_inc.setMaximum(100) self.i_pmus_inc.setObjectName("i_pmus_inc") self.gridLayout_4.addWidget(self.i_pmus_inc, 8, 1, 1, 1) spacerItem3 = QSpacerItem(20, 30, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) self.gridLayout_4.addItem(spacerItem3, 11, 0, 1, 1) self.i_pmus_rel = QtWidgets.QSpinBox(frame) self.i_pmus_rel.setMaximum(100) self.i_pmus_rel.setObjectName("i_pmus_rel") self.gridLayout_4.addWidget(self.i_pmus_rel, 10, 1, 1, 1) self.i_pmus = QtWidgets.QSpinBox(frame) self.i_pmus.setMaximum(100) self.i_pmus.setObjectName("i_pmus") self.gridLayout_4.addWidget(self.i_pmus, 7, 1, 1, 1) self.i_pmus_hld = QtWidgets.QSpinBox(frame) self.i_pmus_hld.setMaximum(100) self.i_pmus_hld.setObjectName("i_pmus_hld") self.gridLayout_4.addWidget(self.i_pmus_hld, 9, 1, 1, 1) self.compliance = QtWidgets.QSpinBox(frame) self.compliance.setMaximum(500) self.compliance.setObjectName("compliance") self.gridLayout_4.addWidget(self.compliance, 2, 1, 1, 1) self.label_enabled = QtWidgets.QLabel(frame) self.label_enabled.setMinimumSize(QtCore.QSize(0, 20)) self.label_enabled.setObjectName("label_enabled") self.gridLayout_4.addWidget(self.label_enabled, 0, 0, 1, 1) self.label_crf = QtWidgets.QLabel(frame) self.label_crf.setMinimumSize(QtCore.QSize(0, 20)) self.label_crf.setObjectName("label_crf") self.gridLayout_4.addWidget(self.label_crf, 17, 0, 1, 1) self.label_resistance = QtWidgets.QLabel(frame) self.label_resistance.setMinimumSize(QtCore.QSize(0, 20)) self.label_resistance.setObjectName("label_resistance") self.gridLayout_4.addWidget(self.label_resistance, 3, 0, 1, 1) self.label_respi_rate = QtWidgets.QLabel(frame) self.label_respi_rate.setMinimumSize(QtCore.QSize(0, 20)) self.label_respi_rate.setObjectName("label_respi_rate") self.gridLayout_4.addWidget(self.label_respi_rate, 4, 0, 1, 1) self.label_e_pmus_rel = QtWidgets.QLabel(frame) self.label_e_pmus_rel.setMinimumSize(QtCore.QSize(0, 20)) self.label_e_pmus_rel.setObjectName("label_e_pmus_rel") self.gridLayout_4.addWidget(self.label_e_pmus_rel, 15, 0, 1, 1) self.label_i_pmus_rel = QtWidgets.QLabel(frame) self.label_i_pmus_rel.setMinimumSize(QtCore.QSize(0, 20)) self.label_i_pmus_rel.setObjectName("label_i_pmus_rel") self.gridLayout_4.addWidget(self.label_i_pmus_rel, 10, 0, 1, 1) self.crf = QtWidgets.QDoubleSpinBox(frame) self.crf.setDecimals(1) self.crf.setSingleStep(0.1) self.crf.setObjectName("crf") self.gridLayout_4.addWidget(self.crf, 17, 1, 1, 1) self.label_compliance = QtWidgets.QLabel(frame) self.label_compliance.setMinimumSize(QtCore.QSize(0, 20)) self.label_compliance.setObjectName("label_compliance") self.gridLayout_4.addWidget(self.label_compliance, 2, 0, 1, 1) spacerItem4 = QSpacerItem(20, 30, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) self.gridLayout_4.addItem(spacerItem4, 1, 0, 1, 1) spacerItem4 = QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) self.gridLayout_4.addItem(spacerItem4, 18, 0, 1, 1) self.gridLayout.addLayout(self.gridLayout_4, 2, 1, 1, 1) self.label_file = QtWidgets.QLabel(frame) self.label_file.setTextFormat(QtCore.Qt.PlainText) self.label_file.setAlignment(QtCore.Qt.AlignCenter) self.label_file.setObjectName("label_file") self.gridLayout.addWidget(self.label_file, 0, 0, 1, 3) self.verticalLayout_2 = QtWidgets.QVBoxLayout() self.verticalLayout_2.setObjectName("verticalLayout_2") self.label = QtWidgets.QLabel(frame) self.label.setObjectName("label") self.verticalLayout_2.addWidget(self.label) self.comment = QtWidgets.QTextEdit(frame) self.comment.setObjectName("comment") self.verticalLayout_2.addWidget(self.comment) self.gridLayout.addLayout(self.verticalLayout_2, 2, 2, 1, 1) self.h_layout.addLayout(self.gridLayout) spacerItem5 = QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.h_layout.addItem(spacerItem5) # Set size and position w, h = self.h_layout.sizeHint().toTuple() w_s, h_s = QApplication.primaryScreen().size().toTuple() x = round(w_s / 2 - w / 2) y = round(h_s / 2 - h / 2) Dashboard.setCentralWidget(frame) Dashboard.resize(w, h) Dashboard.move(x, y) self.retranslateUi(Dashboard) QtCore.QMetaObject.connectSlotsByName(Dashboard) Dashboard.setTabOrder(self.list, self.enabled) Dashboard.setTabOrder(self.enabled, self.compliance) Dashboard.setTabOrder(self.compliance, self.resistance) Dashboard.setTabOrder(self.resistance, self.respi_rate) Dashboard.setTabOrder(self.respi_rate, self.i_pmus) Dashboard.setTabOrder(self.i_pmus, self.i_pmus_inc) Dashboard.setTabOrder(self.i_pmus_inc, self.i_pmus_hld) Dashboard.setTabOrder(self.i_pmus_hld, self.i_pmus_rel) Dashboard.setTabOrder(self.i_pmus_rel, self.e_pmus) Dashboard.setTabOrder(self.e_pmus, self.e_pmus_inc) Dashboard.setTabOrder(self.e_pmus_inc, self.e_pmus_hld) Dashboard.setTabOrder(self.e_pmus_hld, self.e_pmus_rel) Dashboard.setTabOrder(self.e_pmus_rel, self.crf)
name, salary, age = parts if int(salary) > 20000: salary_above_20000 += name + '\n' else: salary_below_20000 += name + '\n' QMessageBox.about( window, '统计结果', f'''薪资20000以上的有:\n{salary_above_20000} \n薪资20000以下的有:\n{salary_below_20000}''') app = QApplication([]) window = QMainWindow() window.resize(500, 400) window.move(350, 150) window.setWindowTitle("薪资统计") textEdit = QPlainTextEdit(window) textEdit.setPlaceholderText("请输入薪资表") textEdit.move(10, 25) textEdit.resize(300, 350) button = QPushButton('统计', window) button.move(380, 80) button.clicked.connect(handleCalc) window.show() app.exec_()