Форум сайта python.su
В программе есть несколько зажимаемых кнопок setCheckable(True).
как сделать так, чтобы при нажатии одной - отжималась другая?
Попробовал через
self.bt_v_rabotu.pressed.connect(self.bt_pereriv.setEnabled(False))
import time import tkinter import pandas as pd from PyQt5 import uic, QtCore, QtGui, QtWidgets, QtTest class PySide2: pass class Ui_MainWindow(object): #Создание главного окна: def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(1200, 800) #1200, 800 MainWindow.setToolTipDuration(-5) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") #Кнопки: #Перерыв: self.bt_pereriv = QtWidgets.QPushButton(self.centralwidget) self.bt_pereriv.setGeometry(QtCore.QRect(180, 120, 180, 70)) font = QtGui.QFont() font.setPointSize(12) font.setBold(False) font.setWeight(50) self.bt_pereriv.setFont(font) self.bt_pereriv.setAutoFillBackground(False) self.bt_pereriv.setCheckable(True) self.bt_pereriv.setObjectName("bt_pereriv") #В работу: self.bt_v_rabotu = QtWidgets.QPushButton(self.centralwidget) self.bt_v_rabotu.setGeometry(QtCore.QRect(0, 40, 180, 70)) font = QtGui.QFont() font.setPointSize(12) font.setBold(False) font.setWeight(50) self.bt_v_rabotu.setFont(font) self.bt_v_rabotu.setAutoFillBackground(False) self.bt_v_rabotu.setCheckable(True) self.bt_v_rabotu.setObjectName("bt_v_rabotu") #Поля: #Задача self.label_zadacha_name = QtWidgets.QLabel(self.centralwidget) self.label_zadacha_name.setGeometry(QtCore.QRect(60, 0, 151, 16)) self.label_zadacha_name.setObjectName("label_zadacha_name") MainWindow.setCentralWidget(self.centralwidget) #Нажатие кнопок: self.retranslateUi(MainWindow) #Перерыв: self.bt_pereriv.pressed.connect(self.label_zadacha_name.clear) # type: ignore self.bt_pereriv.pressed.connect(lambda: self.label_zadacha_name.setText("Перерыв")) #В работу: self.bt_v_rabotu.pressed.connect(self.label_zadacha_name.clear) # type: ignore self.bt_v_rabotu.pressed.connect(lambda: self.label_zadacha_name.setText("В работе") self.bt_v_rabotu.pressed.connect(self.bt_pereriv.setEnabled(False)) # <---- вот здесь
Отредактировано BCnuHy (Янв. 24, 2023 23:12:38)
Офлайн
См. вложение
Прикреплённый файлы:
booton.ui (2,5 KБ)
Офлайн
RodegastСпасибо огромное) в создании кнопок просто не хватало этих строк:
См. вложение
self.bt_pereriv.setAutoExclusive(True)
self.bt_v_rabotu.setAutoExclusive(True)
Отредактировано BCnuHy (Янв. 27, 2023 07:31:17)
Офлайн