Untitled
unknown
plain_text
a year ago
2.4 kB
5
Indexable
from PyQt5.QtCore import Qt from PyQt5.QtWidgets import (QApplication, QWidget, QHBoxLayout, QVBoxLayout, QGroupBox, QRadioButton, QPushButton, QLabel) app = QApplication([]) window = QWidget() window.setWindowTitle('Memo Card') '''Интерфейс приложения Memory Card''' btn_OK = QPushButton('Ответить') # кнопка ответа lb_Question = QLabel('В каком году была основана Москва?') # текст вопроса RadioGroupBox = QGroupBox("Варианты ответов") # группа на экране для переключателей с ответами rbtn_1 = QRadioButton('1147') rbtn_2 = QRadioButton('1242') rbtn_3 = QRadioButton('1861') rbtn_4 = QRadioButton('1943') layout_ans1 = QHBoxLayout() layout_ans2 = QVBoxLayout() # вертикальные будут внутри горизонтального layout_ans3 = QVBoxLayout() layout_ans2.addWidget(rbtn_1) # два ответа в первый столбец layout_ans2.addWidget(rbtn_2) layout_ans3.addWidget(rbtn_3) # два ответа во второй столбец layout_ans3.addWidget(rbtn_4) layout_ans1.addLayout(layout_ans2) layout_ans1.addLayout(layout_ans3) # разместили столбцы в одной строке RadioGroupBox.setLayout(layout_ans1) # готова "панель" с вариантами ответов layout_line1 = QHBoxLayout() # вопрос layout_line2 = QHBoxLayout() # варианты ответов или результат теста layout_line3 = QHBoxLayout() # кнопка "Ответить" layout_line1.addWidget(lb_Question, alignment=(Qt.AlignHCenter | Qt.AlignVCenter)) layout_line2.addWidget(RadioGroupBox) layout_line3.addStretch(1) layout_line3.addWidget(btn_OK, stretch=2) # кнопка должна быть большой layout_line3.addStretch(1) # Теперь созданные строки разместим друг под другой: layout_card = QVBoxLayout() layout_card.addLayout(layout_line1, stretch=2) layout_card.addLayout(layout_line2, stretch=8) layout_card.addStretch(1) layout_card.addLayout(layout_line3, stretch=1) layout_card.addStretch(1) layout_card.setSpacing(5) # пробелы между содержимым window.setLayout(layout_card) window.show() app.exec()
Editor is loading...
Leave a Comment