QT6 CheckBox, SpinBox
QCheckbox
Это кнопка выбора, которую можно включить (установить флажок) или выключить (снять флажок). Флажки обычно используются для обозначения функций в приложении, которые можно включать или отключать, не затрагивая другие. При изменении состояния флажка выдается сигнал StateChanged(). Метод IsChecked() используется для запроса, установлен ли флажок.
Методы:
| Метод | Описание |
| isChecked() | |
| setIcon() | |
| setText() | |
| setChecked() |
Сигналы:
stateChanged
QSpinbox
QSpinBox предназначен для обработки целых чисел и дискретных наборов значений, позволяет выбирать значение, нажимая кнопки вверх / вниз или нажимая клавиши вверх / вниз на клавиатуре, чтобы увеличить / уменьшить отображаемое в данный момент значение. Также возможно ввести значение вручную.
Методы:
| Метод | Описание |
| value() | текущее выбранное целое значение |
| text() | отображения текста в окне прокрутки |
|
setMinimum() |
|
| setMaximum() | |
| setPrefix() | текстовый префикс, добавляемый перед значением, возвращаемым полем прокрутки. |
| setSuffix() | текст суффикса, добавляемый к значению, возвращаемому блоком spin. |
Сигналы:
valueChanged()
editingFinished() выдается при потере фокуса на spinbox.
from PyQt6.QtWidgets import QApplication, QWidget, QLabel, QHBoxLayout, QLineEdit
from PyQt6.QtWidgets import QSpinBox
import sys
class Window(QWidget):
def __init__(self):
super().__init__()
self.setGeometry(200,200, 700, 400)
self.setWindowTitle("Python GUI Development")
self.create_button()
def create_button(self):
hbox = QHBoxLayout()
label = QLabel("Laptop price: ")
self.lineedit = QLineEdit()
self.spinbox = QSpinBox()
self.spinbox.valueChanged.connect(self.spin_selected)
self.total_result = QLineEdit()
hbox.addWidget(label)
hbox.addWidget(self.lineedit)
hbox.addWidget(self.spinbox)
hbox.addWidget(self.total_result)
self.setLayout(hbox)
def spin_selected(self):
if self.lineedit.text() != 0:
price = int(self.lineedit.text())
totalPrice = self.spinbox.value() * price
self.total_result.setText(str(totalPrice))
app = QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec())