import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QHBoxLayout, QLabel, QRadioButton, QPushButton, QGroupBox
class QuestionApp(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("Вопросник")
self.setGeometry(100, 100, 400, 300)
self.initUI()
def initUI(self):
layout = QVBoxLayout()
# Вопрос
question_label = QLabel("Какой твой любимый цвет?")
layout.addWidget(question_label)
# Группа переключателей
self.radio_group = QGroupBox("Выбери один вариант:")
radio_layout = QVBoxLayout()
self.radio1 = QRadioButton("Красный")
self.radio2 = QRadioButton("Синий")
self.radio3 = QRadioButton("Зеленый")
radio_layout.addWidget(self.radio1)
radio_layout.addWidget(self.radio2)
radio_layout.addWidget(self.radio3)
self.radio_group.setLayout(radio_layout)
layout.addWidget(self.radio_group)
# Кнопка "Ответить"
answer_button = QPushButton("Ответить")
answer_button.clicked.connect(self.show_answer)
layout.addWidget(answer_button)
self.setLayout(layout)
def show_answer(self):
if self.radio1.isChecked():
print("Ты выбрала Красный!")
elif self.radio2.isChecked():
print("Ты выбрала Синий!")
elif self.radio3.isChecked():
print("Ты выбрала Зеленый!")
else:
print("Пожалуйста, выбери вариант ответа.")
if __name__ == "__main__":
app = QApplication(sys.argv)
window = QuestionApp()
window.show()
sys.exit(app.exec_())
1) Подключи нужные модули (QtCore и QtWidgets и их элементы).
2) Создай объект-приложение, окно приложения. Задай заголовок и размеры.
3) Создай виджет-вопрос и виджет-кнопку «Ответить».
4) Создай набор переключателей с вариантами ответов. Расположи их по лэйаутам и объедини в группу.
5) Расположи вопрос, группу переключателей и кнопку по лэйаутам.
6) При необходимости, добавь пробелы между виджетами и выровняй их по краю/центру.