sjaserds
@sjaserds
Студент

Как поместить кнопки по центру относительно формы?

Использую PyQt5 создал форму, добавил на нее 2 кнопки. Как разместить кнопки по центру формы? Пробовал абсолютным позиционированием но это не подходит.

import sys
from PyQt5 import QtGui
from PyQt5.QtWidgets import (QApplication, QWidget, QDesktopWidget, QHBoxLayout, QVBoxLayout, QPushButton)
from PyQt5 import QtCore

class StartWindow(QWidget):

    def __init__(self):
        super().__init__()
        self.initUi()

    def initUi(self):
        # self.showFullScreen()
        btnOpenProject = QPushButton("Открыть проект")
        btnExit = QPushButton("Закрыть")

        # self.btnOpenProject.setGeometry(190, 150, 230, 40)
        # self.btnExit.setGeometry(190, 200, 230, 40)
        vbox = QVBoxLayout()
        vbox.addWidget(btnOpenProject)
        vbox.addWidget(btnExit)


        hbox = QHBoxLayout()
        hbox.addLayout(vbox)


        self.setLayout(hbox)

        self.resize(600, 400)
        self.center()
        self.setWindowTitle('Форма')
        self.show()

    def center(self):
        qr = self.frameGeometry()
        cp = QDesktopWidget().availableGeometry().center()
        qr.moveCenter(cp)
        self.move(qr.topLeft())

if __name__ == '__main__':
  
    app = QApplication(sys.argv)
    w = StartWindow()
    sys.exit(app.exec_())


Почему при моем варианте Layout принимает размеры родительского элемента?
  • Вопрос задан
  • 46 просмотров
Пригласить эксперта
Ответы на вопрос 1
Пробовали использовать параметр alignment в методе addWidget? Я давно не кодил на qt в python, но если нет, то посмотрите в интернете:
Вот одна ссылка: Ссылка
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы