QStackedLayout
の addWidget
では alignment
を指定できません。
QVBoxLayout
や QHBoxLayout
のように alignment を指定したい場合はどうすれいいのか?
ということでググってみたものの情報が少なく、参考になりそうなのは以下くらい。
- https://stackoverflow.com/questions/5459602/how-to-center-widget-inside-qstackedlayout
- https://stackoverflow.com/questions/66089492/how-to-add-the-layout-to-qstackedlayout
こういうこと?なんか違う気がする・・・。
import sys
from PySide6.QtWidgets import *
from PySide6.QtCore import Qt
from PySide6.QtCharts import *
class MainWindows(QWidget):
def __init__(self):
super().__init__()
container = QWidget()
# コンテナを親として QVBoxLayout を作成(つまり、コンテナ配下に QVBoxLayout を作成)
vbox_layout = QVBoxLayout(container)
vbox_layout.addWidget(QPushButton('test1'), alignment=Qt.AlignCenter)
stacked_layout = QStackedLayout()
stacked_layout.addWidget(container)
self.setLayout(stacked_layout)
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindows()
window.show()
window.resize(360, 240)
sys.exit(app.exec())
一応表示は正しいんですけどね。