PyQt5 фиксированный размер окна - PullRequest
0 голосов
/ 26 сентября 2018

Я пытаюсь изменить размер окна / QDialog.

Я нашел следующий пример self.setFixedSize(self.size())

Я не уверен, как это реализовать.Я могу поместить его в файл .py, сгенерированный из Qt Designer или явно используя:

QtWidgets.QDialog().setFixedSize(self.size())

без ошибок, но он не работает.Спасибо.

1 Ответ

0 голосов
/ 26 сентября 2018

После загрузки вашего пользовательского интерфейса (если вы используете файл .ui) или в init () вашего окна соответственно.Это должно быть примерно так:

class MyDialog(QtWidgets.QDialog):

    def __init__(self):
        super(MyDialog, self).__init__()
        self.setFixedSize(640, 480)

Дайте мне знать, если это работает для вас.

Редактировать: так должен предоставляться отформатированный код для работы.

from PyQt5 import QtWidgets 


# It is considered a good tone to name classes in CamelCase.
class MyFirstGUI(QtWidgets.QDialog): 

    def __init__(self):
        # Initializing QDialog and locking the size at a certain value
        super(MyFirstGUI, self).__init__()
        self.setFixedSize(411, 247)

        # Defining our widgets and main layout
        self.layout = QtWidgets.QVBoxLayout(self)
        self.label = QtWidgets.QLabel("Hello, world!", self)
        self.buttonBox = QtWidgets.QDialogButtonBox(self) 
        self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel | QtWidgets.QDialogButtonBox.Ok)

        # Appending our widgets to the layout
        self.layout.addWidget(self.label)
        self.layout.addWidget(self.buttonBox)

        # Connecting our 'OK' and 'Cancel' buttons to the corresponding return codes
        self.buttonBox.accepted.connect(self.accept)
        self.buttonBox.rejected.connect(self.reject)

if __name__ == '__main__':
    import sys
    app = QtWidgets.QApplication(sys.argv)
    gui = MyFirstGUI()
    gui.show()
    sys.exit(app.exec_())
...