我有一个QPushbutton被添加到一个布局中。当我设置按钮是可调整大小的,并增加窗口的大小,按钮变得非常大,我不喜欢。是否有一个比例选项可以在resizable选项中设置。这样,当我调整窗口大小时,按钮就会被调整大小,但比例不全。另外,我试图通过使用固定的大小来解决这个问题,但是按钮并没有在布局的中心,它看起来更像是被添加到不在中心的位置。是否有更好的解决方案,使按钮的大小,但与约束,或与固定的大小,但放在布局的中心。
from PyQt5.QtWidgets import QApplication, QPushButton, QVBoxLayout, QWidget
class Example(QWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.initUI()
def initUI(self):
self.AddButton = QPushButton("Add")
#self.AddButton.setFixedSize(80,30)
#self.AddButton.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
self.vbox = QVBoxLayout(self)
self.vbox.addWidget(self.AddButton)
self.setGeometry(300, 300, 300, 150)
if __name__ == "__main__":
app = QApplication(sys.argv)
ex = Example()
ex.show()
sys.exit(app.exec_())
如果你想把它放在布局的中心,那么你要做的就是设置对齐方式。
def initUI(self):
self.AddButton = QPushButton("Add")
self.AddButton.setFixedSize(80,30)
self.vbox = QVBoxLayout(self)
self.vbox.addWidget(self.AddButton, alignment=Qt.AlignHCenter)
self.setGeometry(300, 300, 300, 150)