Пример #1
0
    def initUI(self):
        self.setWindowTitle('文本校验器(限制输入)')

        IntLineEdit = QLineEdit()
        DoubleLineEdit = QLineEdit()
        validatorLineEdit = QLineEdit()

        FromLayout = QFormLayout()

        FromLayout.addRow('整数类型', IntLineEdit)
        FromLayout.addRow('浮点类型', DoubleLineEdit)
        FromLayout.addRow('数字和字母', validatorLineEdit)

        IntLineEdit.setPlaceholderText('整数类型')
        DoubleLineEdit.setPlaceholderText('浮点类型')
        validatorLineEdit.setPlaceholderText('数字和字母')

        # 整数校验器
        intValidator = QIntValidator(self)
        intValidator.setRange(1, 99)

        # 浮点校验器
        doubleValidator = QDoubleValidator(self)
        doubleValidator.setRange(-360, 360)
        doubleValidator.setNotation(QDoubleValidator.StandardNotation)
        doubleValidator.setDecimals(2)

        # 正则表达式 数字和字母
        validator = QRegExp('[a-zA-Z0-9]+&')
        RegValidator = QRegExpValidator(self)
        RegValidator.setRegExp(validator)

        # 设置校验器
        IntLineEdit.setValidator(intValidator)
        DoubleLineEdit.setValidator(doubleValidator)
        validatorLineEdit.setValidator(RegValidator)

        self.setLayout(FromLayout)
    def __init__(self, parent = None, type = 'rows', options = []):
        super(TAInsertRowsColsDialog, self).__init__(parent)

        self.ok = False

        self.cb = QComboBox()
        for index,name in options:
            self.cb.addItem(str(name), index)

        self.nmb = QLineEdit()
        self.nmb.setValidator( QIntValidator(1, 1000, self) );
        self.nmb.setText('1')

        label1 = QLabel("Insert before " + ('row' if type=='rows' else 'col') + ":")
        label2 = QLabel("Number:")

        form = QFormLayout()
        form.addRow(label1, self.cb)
        form.addRow(label2, self.nmb)
        form_widget = QWidget()
        form_widget.setLayout(form)

        self.btn_ok = QPushButton("Ok")
        self.btn_ok.clicked.connect(self.button_press)
        self.btn_cancel = QPushButton("Cancel")
        self.btn_cancel.clicked.connect(self.button_press)
        self.btn_cancel.move(80, 0)

        buttons = QHBoxLayout()
        buttons.addWidget(self.btn_ok)
        buttons.addWidget(self.btn_cancel)
        buttons_widget = QWidget()
        buttons_widget.setLayout(buttons)

        layout = QVBoxLayout()
        layout.addWidget(form_widget)
        layout.addWidget(buttons_widget)
        self.setLayout(layout)
Пример #3
0
    def _new_text_input(self, c: TextInputComponent) -> Tuple[QLabel, QLineEdit]:
        line_edit = QLineEdit()

        if c.only_int:
            line_edit.setValidator(QIntValidator())

        if c.tooltip:
            line_edit.setToolTip(c.tooltip)

        if c.placeholder:
            line_edit.setPlaceholderText(c.placeholder)

        if c.value:
            line_edit.setText(str(c.value) if c.value else '')
            line_edit.setCursorPosition(0)

        if c.read_only:
            line_edit.setEnabled(False)

        def update_model(text: str):
            c.value = text

        line_edit.textChanged.connect(update_model)

        label = QWidget()
        label.setSizePolicy(QSizePolicy.Minimum, QSizePolicy.Minimum)
        label.setLayout(QHBoxLayout())

        label_component = QLabel()
        label.layout().addWidget(label_component)

        if label:
            label_component.setText(c.label.capitalize())

            if c.tooltip:
                label.layout().addWidget(self.gen_tip_icon(c.tooltip))

        return label, self._wrap(line_edit, c)
Пример #4
0
    def __init__(self, parent=None):
        super(lineEditDemo, self).__init__(parent)
        self.setWindowTitle("QLineEdit 例子")

        flo = QFormLayout()
        pIntLineEdit = QLineEdit()
        pDoubleLineEdit = QLineEdit()
        pValidatorLineEdit = QLineEdit()

        flo.addRow("整型:", pIntLineEdit)
        flo.addRow("浮点型:", pDoubleLineEdit)
        flo.addRow("字母和数字:", pValidatorLineEdit)

        pIntLineEdit.setPlaceholderText("整型")
        pDoubleLineEdit.setPlaceholderText("浮点型")
        pValidatorLineEdit.setPlaceholderText("字母和数字")

        # 整数范围:[1, 99]
        pIntValidator = QIntValidator(self)
        pIntValidator.setRange(1, 99)

        # 浮点型范围:[-360, 360], 精度:0.00
        pDoubleValidator = QDoubleValidator(self)
        pDoubleValidator.setRange(-360, 360)
        pDoubleValidator.setNotation(QDoubleValidator.StandardNotation)
        pDoubleValidator.setDecimals(2)

        # 字母和数字
        reg = QRegExp("[a-zA-Z0-9]+$")
        pValidator = QRegExpValidator(self)
        pValidator.setRegExp(reg)

        # 设置验证器
        pIntLineEdit.setValidator(pIntValidator)
        pDoubleLineEdit.setValidator(pDoubleValidator)
        pValidatorLineEdit.setValidator(pValidator)

        self.setLayout(flo)
Пример #5
0
    def __init__(self, parent=None):
        super(lineEditDemo, self).__init__(parent)
        self.setWindowTitle('QLineEdit例子')

        flo = QFormLayout()
        pIntLineEdit = QLineEdit()
        pDoubleLineEdit = QLineEdit()
        pValidatorLineEdit = QLineEdit()

        flo.addRow('整型', pIntLineEdit)
        flo.addRow('浮点型', pDoubleLineEdit)
        flo.addRow('字母和数字', pValidatorLineEdit)

        pIntLineEdit.setPlaceholderText('整型')
        pDoubleLineEdit.setPlaceholderText('浮点型')
        pValidatorLineEdit.setPlaceholderText('字母和数字')

        # 整型,范围[1,99]
        pIntValidator = QIntValidator(self)
        pIntValidator.setRange(1, 99)

        # 浮点型,范围[-360,360],精度:小数点后两位
        pDoubleValidator = QDoubleValidator(self)
        pDoubleValidator.setRange(-360, 360)
        pDoubleValidator.setNotation(QDoubleValidator.StandardNotation)
        pDoubleValidator.setDecimals(2)

        # 字母和数字
        reg = QRegExp('[a-zA-Z0-9]+$')
        pValidator = QRegExpValidator(self)
        pValidator.setRegExp(reg)

        # 设置验证器
        pIntLineEdit.setValidator(pIntValidator)
        pDoubleLineEdit.setValidator(pDoubleValidator)
        pValidatorLineEdit.setValidator(pValidator)

        self.setLayout(flo)
Пример #6
0
    def createPinEnterPanel(self):
        widget = QWidget()
        layout = QVBoxLayout()

        self.pinlabel = QLabel()
        self.pinlabel.setText("Enter PIN number:")

        self.pinBox = QLineEdit()
        self.pinBox.setValidator(QIntValidator())
        self.pinBox.setMaxLength(4)
        self.pinBox.setFont(QFont("Arial", 20))

        submitBtn = QPushButton("Submit", self)
        submitBtn.clicked.connect(self.verifyPin)

        layout.addWidget(self.pinlabel)
        layout.addWidget(self.pinBox)
        layout.addWidget(submitBtn)

        layout.addStretch()
        widget.setLayout(layout)

        return widget
Пример #7
0
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)

        self.auto_update_cb = QCheckBox("Update automatically")
        self.auto_update_cb.setChecked(True)
        self.update_image_btn = QPushButton("Update image")
        self.update_image_btn.setEnabled(False)

        # It is just a placeholder
        self.moving_avg_le = SmartLineEdit(str(1))
        self.moving_avg_le.setValidator(QIntValidator(1, 9999999))
        self.moving_avg_le.setMinimumWidth(60)
        self.moving_avg_le.setEnabled(False)

        self.threshold_mask_le = SmartBoundaryLineEdit('-1e5, 1e5')
        # avoid collapse on online and maxwell clusters
        self.threshold_mask_le.setMinimumWidth(160)

        self.auto_level_btn = QPushButton("Auto level")
        self.save_image_btn = QPushButton("Save image")

        self.initUI()
        self.initConnections()
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)

        self._ma_window_le = SmartLineEdit("1")
        validator = QIntValidator()
        validator.setBottom(1)
        self._ma_window_le.setValidator(validator)

        self._concentric_rings = _ConcentricRingsCtrlWidget()
        self._fourier_transform = _FourierTransformCtrlWidget()
        self._edge_detection = _EdgeDetectionCtrlWidget()

        self._opt_tab = QTabWidget()
        self._opt_tab.addTab(self._concentric_rings, "Concentric rings")
        self._opt_tab.addTab(self._fourier_transform, "Fourier transform")
        self._opt_tab.addTab(self._edge_detection, "Edge detection")

        self._non_reconfigurable_widgets = [
            self._concentric_rings.detect_btn,
        ]

        self.initUI()
        self.initConnections()
Пример #9
0
    def inicializar_gui(self):
        self.ui = Ui_InsercionRegistros()
        self.ui.setupUi(self)

        self.patron_nombre_tabla = '^[a-zA-Z]+$'
        self.regex_nombre_tabla = re.compile(self.patron_nombre_tabla)

        self.patron_nombre_base_datos = '^[a-zA-Z0-9]+$'
        self.regex_nombre_base_datos = re.compile(
            self.patron_nombre_base_datos)

        self.ui.btn_conectar.clicked.connect(self.conectar)
        self.ui.btn_insertar.clicked.connect(self.insertar)

        self.ui.txt_documento.setValidator(QIntValidator(1000, 9999))
        self.ui.txt_ahorros.setValidator(QDoubleValidator(0, 10000000, 2))

        self.mensaje = QMessageBox(self)
        self.mensaje.setWindowTitle('Mensajes')

        self.conexion = None

        self.show()
Пример #10
0
 def __init__(self, widget, update_func=None):
     """
     init method
     :param widget: widget to open view
     """
     super(NewReservationView, self).__init__()
     loadUi("../designer/Reservation/AddReservationView.ui", self)
     self.widget = widget
     self.user = User()
     self.users = self.userM.list()
     self.load_data()
     self.pop = ''
     self.nameField.textChanged.connect(lambda: self.search())
     self.surnameField.textChanged.connect(lambda: self.search())
     self.get_field.clicked.connect(lambda: self.get_fields())
     self.clear_field.clicked.connect(lambda: self.clear_fields())
     self.save_button.clicked.connect(lambda: self.set_fields())
     self.go_back_button.clicked.connect(lambda: self.close())
     if update_func is not None:
         self.save_button.clicked.connect(update_func)
     self.telephone.setValidator(QIntValidator())
     self.name.setValidator(QRegExpValidator(QRegExp('^[a-zA-Z]*$')))
     self.surname.setValidator(QRegExpValidator(QRegExp('^[a-zA-Z]*$')))
Пример #11
0
    def bind(self):
        MainWindow = self.MainWindow

        self.retranslateUi(MainWindow)
        # 退出
        self.exit.clicked.connect(MainWindow.close)
        self.actionExit_2.triggered.connect(MainWindow.close)
        # 提交
        self.submit_button.clicked.connect(self.submit)
        # 按下回车提交
        self.user_input.returnPressed.connect(self.submit)
        # 限制用户输入
        self.user_input.setValidator(QIntValidator())
        self.user_input.setMaxLength(4)
        # 开始游戏
        self.new_game.clicked.connect(self.start_game)
        self.actionNew_Game.triggered.connect(self.start_game)
        # 游戏帮助
        self.actionHelp.triggered.connect(self.show_help)
        # 关于
        self.actionAbout.triggered.connect(self.show_about)

        QtCore.QMetaObject.connectSlotsByName(MainWindow)
Пример #12
0
    def initBtn(self):
        # 聚类个数输入框
        kLabel = QLabel()
        kLabel.setText("k: ")
        self.kEdit = QLineEdit()
        kIntValidator = QIntValidator(self)
        kIntValidator.setRange(1, 8)
        self.kEdit.setPlaceholderText("分类个数(范围: 1-8)")
        self.kEdit.setValidator(kIntValidator)

        self.kButton = QPushButton()
        self.kButton.setText("分类")
        self.kButton.setEnabled(False)
        self.kButton.clicked.connect(self.kMeansPlot)

        hBox = QHBoxLayout(self)
        hBox.addWidget(kLabel, 0)
        hBox.addWidget(self.kEdit, 0)
        hBox.addWidget(self.kButton, 0)

        hWidget = QWidget()
        hWidget.setLayout(hBox)
        self.mainLayout.addWidget(hWidget)
Пример #13
0
    def init_ui(self):
        self.setFixedWidth(322)
        grid = QGridLayout()
        grid.setContentsMargins(0, 0, 0, 0)
        grid.setSpacing(0)

        label = QLabel(self.label_value)
        label.setFixedWidth(60)
        grid.addWidget(label, 0, 0)
        self.slider = QSlider(Qt.Horizontal)
        self.slider.setValue(self.current_value)
        self.slider.sliderPressed.connect(self.on_slider_pressed)
        self.slider.sliderReleased.connect(self.on_slider_released)
        self.slider.sliderMoved.connect(self.on_slider_changed)
        grid.addWidget(self.slider, 0, 1, 1, 2)
        self.line_edit = AutoMateLineEdit()
        self.line_edit.setFixedWidth(60)
        self.line_edit.bind_on_unfocus(self.on_line_edit_changed)
        self.line_edit.setValidator(QIntValidator())
        self.line_edit.setText(str(self.current_value))
        grid.addWidget(self.line_edit, 0, 3, 1, 1)

        self.setLayout(grid)
Пример #14
0
    def _get_layout(self, input_parameter: 'InputParameters'):
        current_value = self.default_dict.get(input_parameter.name, '')
        if current_value is None:
            current_value = ''
        label_widget = QLabel(input_parameter.label)
        input_widget = QLineEdit(str(current_value))
        if input_parameter.type is int:
            input_widget.setValidator(QIntValidator())
        layout = QHBoxLayout()
        layout.addWidget(label_widget, Qt.AlignHCenter)
        layout.addWidget(input_widget, Qt.AlignHCenter)
        if input_parameter.info:
            info_button = InfoButton(input_parameter.info)
            layout.addWidget(info_button, Qt.AlignLeft)

        def get_input(s):
            return validate_scientific_value(input_widget,
                                             input_parameter.type,
                                             input_parameter.none)

        setattr(AbstractInputParametersWidget, input_parameter.name,
                property(get_input))
        return layout
Пример #15
0
    def initUI(self):

        self.setWindowTitle("验证器")
        formlayout = QFormLayout(self)
        int_line = QLineEdit()
        double_line = QLineEdit()

        int_line.setPlaceholderText("int")

        # formlayout.addWidget(int_line)
        # formlayout.addWidget(double_line)

        formlayout.addRow("整型", int_line)
        formlayout.addRow("浮点型", double_line)

        double_line.setPlaceholderText("float")
        double_line.setEchoMode(QLineEdit.Password)

        int_val = QIntValidator()
        int_val.setRange(0, 100)
        double_val = QDoubleValidator(double_line)

        int_line.setValidator(int_val)
Пример #16
0
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)

        self.auto_update_cb = QCheckBox("Update automatically")
        self.auto_update_cb.setChecked(True)
        self.update_image_btn = QPushButton("Update image")
        self.update_image_btn.setEnabled(False)

        # It is just a placeholder
        self.moving_avg_le = SmartLineEdit(str(1))
        validator = QIntValidator()
        validator.setBottom(1)
        self.moving_avg_le.setValidator(validator)
        self.moving_avg_le.setMinimumWidth(60)
        self.moving_avg_le.setEnabled(False)

        self.auto_level_btn = QPushButton("Auto level")
        self.save_image_btn = QPushButton("Save image")

        self._non_reconfigurable_widgets = [self.save_image_btn]

        self.initUI()
        self.initConnections()
Пример #17
0
    def __add_algorithm_property_inputs(self):
        only_int_validator = QIntValidator()

        self.__pop_amount_input = QLineEdit()
        self.__pop_amount_input.setPlaceholderText('Population amount')
        self.__pop_amount_input.setValidator(only_int_validator)
        self.__form_layout.addRow(self.__pop_amount_input)

        self.__epoch_number_input = QLineEdit()
        self.__epoch_number_input.setPlaceholderText('Epochs amount')
        self.__epoch_number_input.setValidator(only_int_validator)
        self.__form_layout.addRow(self.__epoch_number_input)

        self.__selection_amount_input = QLineEdit()
        self.__selection_amount_input.setPlaceholderText(
            'Best and tournament chromosome amount')
        self.__selection_amount_input.setValidator(only_int_validator)
        self.__form_layout.addRow(self.__selection_amount_input)

        self.__elite_amount_input = QLineEdit()
        self.__elite_amount_input.setPlaceholderText('Elite Strategy amount')
        self.__elite_amount_input.setValidator(only_int_validator)
        self.__form_layout.addRow(self.__elite_amount_input)
Пример #18
0
    def create_layout(self):
        layout = QVBoxLayout()
        self.line_edit = QLineEdit()

        buttons_layout = QHBoxLayout()
        save_button = QPushButton("Save")
        save_button.clicked.connect(lambda: self.update_to_edit())
        cancel_button = QPushButton("Cancel")
        cancel_button.clicked.connect(lambda: self.close())
        buttons_layout.addWidget(save_button)
        buttons_layout.addWidget(cancel_button)

        if self.to_edit in ("Current Weight", "Weight Goal", "Time Spent",
                            "Distance Travelled"):
            self.line_edit.setValidator(QIntValidator())
        elif self.to_edit == "Loss Per Week":
            self.line_edit.setValidator(QDoubleValidator())
        self.line_edit.setText(str(self.old_value))

        layout.addWidget(self.line_edit)
        layout.addLayout(buttons_layout)

        return layout
Пример #19
0
    def pressLay(self):
        onlyInt = QIntValidator()
        nospace = QRegExpValidator(QRegExp("[^ ]+"))
        self.pressText = QLineEdit()
        self.pressInterval = QLineEdit("0")
        self.pressPresses = QLineEdit("1")
        pressButton = QPushButton("Add to List")
        self.pressInterval.setValidator(onlyInt)
        self.pressPresses.setValidator(onlyInt)
        self.pressText.setValidator(nospace)
        pressInfo = QLabel(
            "You can write enter, capslock ve space...\nLook keys.txt for details."
        )

        pressForm = QFormLayout()
        pressForm.addRow(pressInfo)
        pressForm.addRow("Key :", self.pressText)
        pressForm.addRow("Presses :", self.pressPresses)
        pressForm.addRow("Interval :", self.pressInterval)
        pressForm.addRow(pressButton)
        self.pressWid.setLayout(pressForm)

        pressButton.clicked.connect(self.pressDo)
    def setupWidgets(self):

        self.prevButton = QPushButton('Previous')
        self.nextButton = QPushButton('Next')
        self.jumpLabel = QLabel("jump To")
        self.jumpBox = QLineEdit()
        self.numberLabel = QLabel("out of {}")
        self.goButton = QPushButton("Go")
        self.jumpBox.setValidator(QIntValidator())
        self.jumpBox.setFixedWidth(30)

        self.lowerLayout.addWidget(self.prevButton)
        self.lowerLayout.addWidget(self.nextButton)
        self.upperLayout.addWidget(self.jumpLabel)
        self.upperLayout.addWidget(self.jumpBox)
        self.upperLayout.addWidget(self.numberLabel)
        self.upperLayout.addWidget(self.goButton)
        self.upperLayout.setContentsMargins(2, 2, 5, 5)

        self.layout.addLayout(self.upperLayout)
        self.layout.addLayout(self.lowerLayout)

        self.setLayout(self.layout)
Пример #21
0
    def init_ui(self):
        self.setWindowTitle(
            strs.strings.get("measWheelConfig")[appconfig.language])
        self.setGeometry(200, 300, 300, 100)
        self.configLayout = QFormLayout()

        self.buttons = QtWidgets.QDialogButtonBox(
            QtWidgets.QDialogButtonBox.Ok | QtWidgets.QDialogButtonBox.Cancel)

        self.measWheelDiameter = QtWidgets.QLabel(
            strs.strings.get("measWheelDiameter")[appconfig.language])
        self.measWheelDiameter.setObjectName("measWheelDiameter")
        self.measWheelDiameterEdit = QtWidgets.QLineEdit()
        self.measWheelDiameterEdit.setObjectName("measWheelDiameterEdit")
        self.measWheelDiameterEdit.setText(
            str(self.measWheelConfig.get("measWheelDiameter")) + "cm")

        self.pulseCountPerRound = QtWidgets.QLabel(
            strs.strings.get("pulseCountPerRound")[appconfig.language])
        self.pulseCountPerRound.setObjectName("pulseCountPerRound")
        self.pulseCountPerRoundEdit = QtWidgets.QLineEdit()
        self.pulseCountPerRoundEdit.setText(
            str(self.measWheelConfig.get("pulseCountPerRound")))
        self.pulseCountPerRoundEdit.setObjectName("pulseCountPerRoundEdit")
        self.pulseCountPerRoundEdit.setValidator(QIntValidator(0, 1000))

        self.configLayout.addRow(
            strs.strings.get("measWheelDiameter")[appconfig.language],
            self.measWheelDiameterEdit)
        self.configLayout.addRow(
            strs.strings.get("pulseCountPerRound")[appconfig.language],
            self.pulseCountPerRoundEdit)
        self.configLayout.addWidget(self.buttons)

        self.buttons.accepted.connect(self.accept)
        self.buttons.rejected.connect(self.reject)
        self.setLayout(self.configLayout)
Пример #22
0
    def initUi(self):
        self.setupUi(self)
        # 先取保存的变量
        self.settings = QSettings("yqfsoft", "DDNS")
        self.userinfo = self.settings.value('userinfo')
        # 开机自动启动
        self.load_autorun_setting()
        # 设置文本可以跳转页面
        self.web_lb.setOpenExternalLinks(True)
        # 读取userinfo
        self.load_userinfo()
        # 创建托盘
        self.create_tuopan()

        self.ip_request = AsyncRequest()
        # self.update_ip_request = AsyncRequest()
        # 获取ip地址
        # https://ipv4.jsonip.com https://ipv6.jsonip.com https://jsonip.com
        self.ip_url = 'https://ipv4.jsonip.com'
        self.ip_request.get(self.ip_url)
        # dyndns更新
        self.request_ip_time = QTimer()

        # 验证时间的
        update_time_validator = QIntValidator(5, 1092)
        self.update_time_le.setValidator(update_time_validator)

        # 信号
        # 获取ip地址的信号
        self.ip_request.getResult.connect(self.get_ip_result)
        # dyndns发送更新ip地址
        # self.update_ip_request.getResult.connect(self.get_update_ip_result)
        self.request_ip_time.timeout.connect(
            lambda: self.ip_request.get(self.ip_url))
        # 监控托盘的双击显示和隐藏
        self.tuopan.activated[self.tuopan.ActivationReason].connect(
            self.iconActivated)
Пример #23
0
    def __init__(self):
        super(Window, self).__init__()
        self.setWindowTitle("Python")
        self.setGeometry(300, 300, 500, 500)
        self.formGroupBox = QGroupBox("FISH SCHOOL SEARCH")
        self.oneLineEdit = QLineEdit()
        self.twoLineEdit = QLineEdit()
        self.threeLineEdit = QLineEdit()
        self.fourLineEdit = QLineEdit()
        self.fiveLineEdit = QLineEdit()
        self.sixLineEdit = QLineEdit()

        self.btn = QPushButton('Select dataset file')
        self.btn.clicked.connect(self.openFile)
        self.msg = QLabel('')

        self.onlyInt = QIntValidator()
        self.onlyDouble = QDoubleValidator()

        self.oneLineEdit.setValidator(self.onlyInt)
        self.twoLineEdit.setValidator(self.onlyInt)
        self.threeLineEdit.setValidator(self.onlyInt)
        self.fourLineEdit.setValidator(self.onlyDouble)
        self.fiveLineEdit.setValidator(self.onlyDouble)
        self.sixLineEdit.setValidator(self.onlyDouble)

        self.createForm()

        self.buttonBox = QDialogButtonBox(QDialogButtonBox.Ok
                                          | QDialogButtonBox.Cancel)
        self.buttonBox.accepted.connect(self.passArgs)

        self.buttonBox.rejected.connect(self.reject)
        mainLayout = QVBoxLayout()
        mainLayout.addWidget(self.formGroupBox)
        mainLayout.addWidget(self.buttonBox)
        self.setLayout(mainLayout)
Пример #24
0
 def __init__(self, parent=None):
     super(MainWindow, self).__init__(parent)
     # setup variables
     self.trans_coords = []
     # setup UI
     self.setupUi(self)
     # QIntValidator
     self.double_check = QDoubleValidator()
     lineEdit_list = [
         self.lineEdit_1, self.lineEdit_2, self.lineEdit_3, self.lineEdit_4,
         self.lineEdit_5, self.lineEdit_6, self.lineEdit_7
     ]
     for line_item in lineEdit_list:
         line_item.setValidator(self.double_check)
     self.onlyInt = QIntValidator()
     lineEdit_list = [self.lineEdit_8, self.lineEdit_9, self.lineEdit_10]
     for line_item in lineEdit_list:
         line_item.setValidator(self.onlyInt)
     # init canvas_1
     self.static_canvas_1 = FigureCanvas(Figure(figsize=(5, 3)))
     QtWidgets.QVBoxLayout(self.widget_1).addWidget(self.static_canvas_1)
     self.addToolBar(NavigationToolbar(self.static_canvas_1, self))
     self._static_ax_1 = self.static_canvas_1.figure.subplots()
     # init canvas_2
     self.static_canvas_2 = FigureCanvas(Figure(figsize=(5, 3)))
     QtWidgets.QVBoxLayout(self.widget_2).addWidget(self.static_canvas_2)
     self.addToolBar(NavigationToolbar(self.static_canvas_2, self))
     self._static_ax_2 = self.static_canvas_2.figure.subplots()
     # slot connections
     self.radioButton_1.clicked.connect(self.disable_1)
     self.radioButton_2.clicked.connect(self.disable_2)
     self.radioButton_3.clicked.connect(self.disable_3)
     self.pushButton_1.clicked.connect(self.plot_1)
     self.pushButton_2.clicked.connect(self.initmap_1)
     self.pushButton_3.clicked.connect(self.initmap_2)
     self.pushButton_4.clicked.connect(self.plot_2)
     self.initUI()
Пример #25
0
    def show(self):

        logging.debug('edit() called ExecReturn')
        self.settingsLayout = QVBoxLayout()
        self.delayRow = QWidget()
        self.delayRowLayout = QHBoxLayout()

        self.window = ElementEditor(self)
        self.window.setWindowTitle(QC.translate('', 'Settings'))

        self.top_text = QLabel()
        self.top_text.setText(QC.translate('', 'Debug delay:'))

        self.delay_text = QLabel()
        self.delay_text.setText(QC.translate('', 'Milliseconds'))

        self.delayInput = QLineEdit()
        self.delayInput.setValidator(QIntValidator(0, 9999))
        self.delayInput.setText(str(self.delay))

        self.delayRowLayout.addWidget(self.delayInput)
        self.delayRowLayout.addWidget(self.delay_text)
        self.delayRowLayout.addStretch(1)

        self.delayRow.setLayout(self.delayRowLayout)

        self.confirm_button = QPushButton(QC.translate('', 'Ok'))

        self.confirm_button.clicked.connect(self.window.closeEvent)
        self.window.window_closed.connect(self.edit_done)

        self.settingsLayout.addWidget(self.top_text)
        self.settingsLayout.addWidget(self.delayRow)
        self.settingsLayout.addStretch(1)
        self.settingsLayout.addWidget(self.confirm_button)
        self.window.setLayout(self.settingsLayout)
        self.window.show()
Пример #26
0
    def __init__(self):
        QMainWindow.__init__(self)

        # self.setMinimumSize(QSize(640, 480))
        self.setWindowTitle("PyMines")

        centralWidget = QWidget(self)
        self.setCentralWidget(centralWidget)

        self.mainLayout_ = QGridLayout()
        centralWidget.setLayout(self.mainLayout_)

        self.setUpLayout_ = QFormLayout()
        self.mainLayout_.addLayout(self.setUpLayout_, 0, 0)

        self.onlyInt_ = QIntValidator()

        self.rows_ = QLineEdit(self)
        self.rows_.setValidator(self.onlyInt_)
        self.setUpLayout_.addRow("Rows: ", self.rows_)
        self.cols_ = QLineEdit(self)
        self.cols_.setValidator(self.onlyInt_)
        self.setUpLayout_.addRow("Cols: ", self.cols_)
        self.bmbs_ = QLineEdit(self)
        self.bmbs_.setValidator(self.onlyInt_)
        self.setUpLayout_.addRow("Bombs: ", self.bmbs_)

        self.newGame_ = QPushButton("New Game")
        self.mainLayout_.addWidget(self.newGame_, 1, 0)

        self.mf_ = QGridLayout()
        self.mainLayout_.addLayout(self.mf_, 2, 0)

        self.newGame_.clicked.connect(self.newGame)

        self.st_ = QLabel(self.model_.st_.name)
        self.mainLayout_.addWidget(self.st_, 3, 0)
Пример #27
0
    def __init__(self, parent=None):
        super(Dialog, self).__init__(parent)

        self.setWindowTitle("Dialog")

        pLineEdit1 = QLineEdit()
        pLineEdit1.setValidator(QIntValidator())  # 设置校验器 => 整型
        pLineEdit1.setMaxLength(4)  # 设置允许输入字符的最大长度
        pLineEdit1.setAlignment(Qt.AlignRight)  # 居右显示
        pLineEdit1.setFont(QFont("Arial", 15))  # 设置字体

        pLineEdit2 = QLineEdit()
        pLineEdit2.setValidator(QDoubleValidator(0.99, 99.99, 2))

        pLineEdit3 = QLineEdit()
        pLineEdit3.setInputMask('+99_9999_999999')  # 设置掩码

        pLineEdit4 = QLineEdit()
        pLineEdit4.textChanged.connect(self.textchanged)  # 当修改文本内容时,这个信号会被发射

        pLineEdit5 = QLineEdit()
        pLineEdit5.setEchoMode(QLineEdit.Password)  # 设置文本框显示格式 => 显示与平台相关的掩码字符
        pLineEdit5.editingFinished.connect(
            self.enterPress)  # 当结束编辑文本时,这个信号会被发射

        pLineEdit6 = QLineEdit("Hello PyQt5")
        pLineEdit6.setReadOnly(True)  # 设置文本框为只读

        # 表单布局
        flo = QFormLayout()
        flo.addRow("integer validator", pLineEdit1)
        flo.addRow("Double validator", pLineEdit2)
        flo.addRow("Input Mask", pLineEdit3)
        flo.addRow("Text changed", pLineEdit4)
        flo.addRow("Password", pLineEdit5)
        flo.addRow("Read Only", pLineEdit6)
        self.setLayout(flo)
Пример #28
0
    def openFile(self, file, savePickle):
        if os.path.isfile(savePickle) and self.checkFile(file, savePickle):
            # 该文件曾被打开过, 有pickle缓存
            # 该文件没有被修改过
            with open(savePickle, 'rb') as f:
                self.csv_file = pickle.load(f)
        else:
            # 该文件没有被打开过
            # 一是打开它
            # 二是保存该文件的csv类型, 提高下次打开效率
            # 三是保存该文件的最后修改时间,用于下次打开时判断是否被修改过
            self.csv_file = pd.read_csv(file)
            with open(savePickle, 'wb') as f:
                pickle.dump(self.csv_file, f)

            changeTime = time.localtime(os.stat(file).st_mtime)
            savePickleChange = savePickle + 'change'
            with open(savePickleChange, 'wb') as f:
                pickle.dump(changeTime, f)

        self.csv_file.fillna(0)
        self.drawMapButton.setEnabled(True)
        self.drawColorMapButton.setEnabled(True)
        self.countStoreByTimezoneButton_bar.setEnabled(True)
        self.countStoreByTimezoneButton_pie.setEnabled(True)
        self.countStoreByCountryButton_bar.setEnabled(True)
        self.countStoreByCountryButton_pie.setEnabled(True)
        self.findTopKButton.setEnabled(True)

        self.longitudeEdit.setEnabled(True)
        self.latitudeEdit.setEnabled(True)
        self.kEdit.setEnabled(True)

        kIntValidator = QIntValidator(self)
        kIntValidator.setRange(0, len(self.csv_file))
        self.kEdit.setPlaceholderText("输入0-"+str(len(self.csv_file))+"间的整数值")
        self.kEdit.setValidator(kIntValidator)
Пример #29
0
        def initUI(self):
            self.setWindowTitle('校验器')
            formLayout = QFormLayout()

            intLineEdit = QLineEdit()
            doubleLineEdit = QLineEdit()
            validatorLineEdit = QLineEdit()

            formLayout.addRow('整数类型', intLineEdit)
            formLayout.addRow('浮点类型', doubleLineEdit)
            formLayout.addRow('数字和字母', validatorLineEdit)

            intLineEdit.setPlaceholderText('整型')  #设置提示字符
            doubleLineEdit.setPlaceholderText('浮点型')
            validatorLineEdit.setPlaceholderText('字母和数字')

            #整数校验器
            intValidator = QIntValidator(self)
            intValidator.setRange(1, 99)  #只能输入1——99之间的整数

            #浮点校验器[-360,360],精度:小数点后2位
            doubleValidator = QDoubleValidator(self)
            doubleValidator.setRange(-360, 360)  #设置范围
            doubleValidator.setNotation(QDoubleValidator.StandardNotation)
            doubleValidator.setDecimals(2)  #设置精度,小数点2位

            #字符和数字
            reg = QRegExp('[a-zA-Z0-9]')  #匹配数字和字母的正则表达式
            validator = QRegExpValidator(self)
            validator.setRegExp(reg)  #通过带入正则表达式制作数字和字母的校验器

            #设置校验器
            intLineEdit.setValidator(intValidator)  #将整型校验器设置到第一个输入框中
            doubleLineEdit.setValidator(doubleValidator)
            validatorLineEdit.setValidator(validator)

            self.setLayout(formLayout)
    def initUI(self):
        # 单行文本框,设置预占提示文字
        self.led_001 = QLineEdit()
        self.led_001.setPlaceholderText("请在此处输入文本")

        # 密码框制作
        self.led_002 = QLineEdit()
        self.led_002.setEchoMode(QLineEdit.Password)
        self.led_002.setText("hello")

        # 输入数据格式限制(允许在输入框里面输入什么,或者不允许输入什么)
        self.led_003 = QLineEdit()
        self.led_003.setValidator(QIntValidator())
        self.led_003.setText("100000")
        ### 下面的语句使用前 from PyQt5.QtGui import QIntValidator,QDoubleValidator,QRegExpValidator
        # # 整形 范围:[1, 99]
        # pIntValidator = QIntValidator(self)
        # pIntValidator.setRange(1, 99)
        #
        # # 浮点型 范围:[-360, 360] 精度:小数点后2位
        # pDoubleValidator = QDoubleValidator(self)
        # pDoubleValidator.setRange(-360, 360)
        # pDoubleValidator.setNotation(QDoubleValidator.StandardNotation)
        # pDoubleValidator.setDecimals(2)
        #
        # # 正则表达式匹配
        # reg = QRegExp("[a-zA-Z0-9]+$")
        # pValidator = QRegExpValidator(self)
        # pValidator.setRegExp(reg)

        # 限制数据显示格式,比如输入软件序列号时的输入框
        self.led_004 = QLineEdit()
        self.led_004.setInputMask("0000-0000-0000-00")
        # self.led_004.setInputMask("AAAA-0000-HH")

        # 文本域的使用
        self.ted_001 = QTextEdit()