布局的中央小部件位置

问题描述

有没有办法在 qmain 窗口的中央小部件中定位或调整布局大小。

我正在尝试使用 QMainWindow 编写应用程序。我在中央小部件中设置了不同的布局,但这些小部件的间距完全不同

class MainApp(QMainWindow):

    def __init__(self,parent = None):
        super().__init__(parent)
    
        self.statusBar().showMessage('Select any option to proceed',3000)
    
        self.setwindowTitle("CH APTMO App")
        self.setGeometry(100,100,1050,600)
        self.setFixedSize(self.size())
    
        self.central_widget = QStackedWidget()
        self.setCentralWidget(self.central_widget)


class InsideWidget(QWidget):
    def __init__(self,parent=None):
        super().__init__(parent)
        self.From = QLabel("From")
        self.To = QLabel("To")
        self.Type = QLabel("Type")
        self.Number = QLabel("Number")
      
        from_list = ["val1","val2","val3"]
        self.fromentry = QComboBox()
        self.fromentry.setEditable(True)
        self.fromentry.addItems(from_list)
        self.toentry = QLineEdit()
        self.typeentry = QLineEdit()
        self.numentry = QLineEdit()
       
        self.receivebaglayout = qgridLayout()
       
        self.receivebaglayout.addWidget(self.From,0)
        self.receivebaglayout.addWidget(self.To,1)
        self.receivebaglayout.addWidget(self.Type,2)
        self.receivebaglayout.addWidget(self.Number,3)
    
        self.receivebaglayout.addWidget(self.fromentry,1,0)
        self.receivebaglayout.addWidget(self.toentry,1)
        self.receivebaglayout.addWidget(self.typeentry,2)
        self.receivebaglayout.addWidget(self.numentry,3)
    
        self.receivebaglayout.setSpacing(10)
    
        self.setLayout(self.receivebaglayout)

布局乱七八糟中央小部件的网格布局是这样的

显示第 1 行和第 2 行之间的间距的图片

picture showing the spacing between row 1 and 2

如果我们向网格布局添加了许多小部件,它会得到适当的调整。但是当小部件较少时,它会遍布整个中央小部件布局。

我们怎么能阻止它?

添加了预期的输出

预期的输出

The output expected

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)