This repository has been archived on 2024-08-23. You can view files and clone it, but cannot push or open issues or pull requests.

62 lines
1.4 KiB
Python
Executable File

import sys
from PyQt6.QtWidgets import (
QApplication,
QWidget,
QHBoxLayout,
QSpinBox,
QLabel,
QLineEdit,
)
from PyQt6.QtGui import QFont
class Window(QWidget):
def __init__(self) -> None:
super().__init__()
self.setGeometry(*(500,) * 4)
self.setWindowTitle("Окно")
self.price = 300
self.amount = 0
hbox = QHBoxLayout()
self.line_edit = QLineEdit(str(self.price))
self.line_edit.setFont(QFont("Times", 14))
self.spin_box = QSpinBox()
self.spin_box.valueChanged.connect(self.handle_spin_box)
self.result = QLabel(str(self.total))
hbox.addWidget(self.line_edit)
hbox.addWidget(self.spin_box)
hbox.addWidget(self.result)
self.setLayout(hbox)
def handle_spin_box(self) -> None:
try:
self.price = int(self.line_edit.text())
except ValueError:
return
self.amount = self.spin_box.value()
self.result.setText(str(self.total))
@property
def total(self) -> int:
return self.amount * self.price
def handle_line_edit(self) -> None:
pass
def main() -> None:
app = QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec())
if __name__ == "__main__":
main()