ウィンドウ/ QDialogをサイズ変更できないように設定しようとしています。
次の例を見つけましたself.setFixedSize(self.size())
これを実装する方法がわかりません。 Qt Designerから生成された.pyファイルに配置するか、明示的に次のように使用できます。
QtWidgets.QDialog().setFixedSize(self.size())
エラーなしですが、機能していません。ありがとう。
UIをロードした後(.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_())
exp:
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(700, 494)
MainWindow.setFixedSize(300,300) :
MainWindow
オブジェクトで固定ウィンドウを設定する
self.height =300
self.width =300
self.top =50
self.left =50