Tetris
/
dialogWindows.py
58 строк · 1.9 Кб
1from PyQt5.QtWidgets import QPushButton, QDialog, QRadioButton, QButtonGroup, QVBoxLayout, QLabel
2from PyQt5.QtCore import pyqtSignal
3from PyQt5 import QtGui
4from settingsTetris import Setting as st
5
6
7class ChangeSize(QDialog):
8"""Dialog window"""
9SizeSignal = pyqtSignal()
10
11def __init__(self):
12super(ChangeSize, self).__init__()
13self.initUI()
14self.loadStyle()
15
16def loadStyle(self):
17styledialog = "static/styleDialog.css"
18with open(styledialog, "r") as f:
19self.setStyleSheet(f.read())
20
21def initUI(self):
22lb = QLabel('Choise height x width', self)
23radio = QRadioButton('15х10', self)
24radio.setChecked(True)
25radio_2 = QRadioButton('18х12', self)
26radio_3 = QRadioButton('20х15', self)
27radio_4 = QRadioButton('25х20', self)
28
29self.radioGroup = QButtonGroup()
30self.radioGroup.addButton(radio)
31self.radioGroup.addButton(radio_2)
32self.radioGroup.addButton(radio_3)
33self.radioGroup.addButton(radio_4)
34self.radioGroup.buttonClicked.connect(self.buttonYesClicked)
35
36self.radioDict = {radio: '1510', radio_2: '1812', radio_3: '2015', radio_4: '2520'}
37
38layout = QVBoxLayout(self)
39layout.addWidget(lb)
40layout.addWidget(radio)
41layout.addWidget(radio_2)
42layout.addWidget(radio_3)
43layout.addWidget(radio_4)
44
45qbtn = QPushButton('Cancel', self)
46qbtn.clicked.connect(self.close)
47layout.addWidget(qbtn)
48
49self.setWindowTitle('Change Size')
50self.setWindowIcon(QtGui.QIcon('Photo/Settings.jpg'))
51self.setFixedSize(250, 200)
52
53def buttonYesClicked(self, button):
54"""Change parameters of main window"""
55st.board_h = int(self.radioDict[button][:2])
56st.board_w = int(self.radioDict[button][2:])
57self.SizeSignal.emit()
58self.close()
59