как можно увеличивать и уменьшать значение lcd.display(0) при нажатии на кнопку? какую функцию прописать?
from PyQt5 import QtCore , QtWidgets
import sys
class MyWindow(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("Радио")
self.resize(450, 200)
self.btn1 = QtWidgets.QPushButton("+")
self.btn2 = QtWidgets.QPushButton("-")
self.vbox = QtWidgets.QVBoxLayout()
self.setLayout(self.vbox)
self.vbox.addWidget(self.btn1)
self.vbox.addWidget(self.btn2)
self.lcd1 = QtWidgets.QLCDNumber()
self.lcd1.display(0)
self.vbox.addWidget(self.lcd1)
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec_())
Ответы (2 шт):
Автор решения: Владимир Михайлов
→ Ссылка
Для изменения значения на LCD-дисплее при нажатии на кнопку "+" и "-" вам нужно добавить слоты (обработчики событий) для них и в этих слотах изменять значение, отображаемое на дисплее.
Например, вы можете использовать следующие функции-слоты для увеличения и уменьшения значения на единицу:
class MyWindow(QtWidgets.QWidget): def init(self): # ... ваш код ... self.btn1.clicked.connect(self.increment_value) self.btn2.clicked.connect(self.decrement_value)
def increment_value(self):
value = self.lcd1.value() + 1
self.lcd1.display(value)
def decrement_value(self):
value = self.lcd1.value() - 1
self.lcd1.display(value)
Автор решения: AVID GAMER
→ Ссылка
Рабочий код:
from PyQt5 import QtCore , QtWidgets
import sys
class MyWindow(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("Радио")
self.resize(450, 200)
self.btn1 = QtWidgets.QPushButton("+")
self.btn2 = QtWidgets.QPushButton("-")
self.vbox = QtWidgets.QVBoxLayout()
self.setLayout(self.vbox)
self.vbox.addWidget(self.btn1)
self.vbox.addWidget(self.btn2)
self.lcd1 = QtWidgets.QLCDNumber()
self.lcd1.display(0)
self.vbox.addWidget(self.lcd1)
self.btn1.clicked.connect(self.funcPlus)
self.btn2.clicked.connect(self.funcMinus)
def funcPlus(self):
value = self.lcd1.value() + 1
self.lcd1.display(value)
def funcMinus(self):
value = self.lcd1.value() - 1
self.lcd1.display(value)
def keyPressEvent(self, event):
if event.key() == QtCore.Qt.Key_Plus:
self.funcPlus()
if event.key() == QtCore.Qt.Key_Minus:
self.funcMinus()
event.accept()
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec_())
Так же можно использовать keyPressEvent чтобы нажимать + и - на клавиатуре.