PyQt5 Alignment eklenmeme sorunu

PyQt5te stackedwidgeta alignment ekledim ama alignment olmuyor anlamadım bende başta oluyodu şimdi olmuyor bunu nasıl düzelticem

import sys

from PyQt5 import QtCore, QtWidgets , QtGui

from qtmodern.styles import dark

from qtmodern.windows import ModernWindow

from PyQt5.QtWidgets import *

from PyQt5.QtGui import *

from PyQt5.QtCore import *

import qdarkgraystyle

class MainWindow(object):

    def __init__(self):

        self.window = QtWidgets.QWidget()

        self.window.setGeometry(QtCore.QRect(500, 0, 800, 600))  # arbitrary size/location

        self.window.setMinimumSize(800,600)

        self.window.setMaximumSize(1366,768)

        

        self.main_screen_widget = QStackedWidget()#menünün stackedwidgetı

        self.main_screen_widget.setGeometry(0,0,700,35)

                

        self.normal_menu = QWidget()#menünün içinde olduğu widget

        self.main_screen_widget.addWidget(self.normal_menu)

        self.scene  =QGraphicsScene()

        self.graphicView = QGraphicsView(self.scene, self.normal_menu)#menü

        self.graphicView.setGeometry(0,0,780,80)



        self.photos_path = None#burası önemsiz buttona koyulacak resmin dosyası gelecek

        self.profile_photo = QPushButton('' , self.normal_menu) #yuvarlak button

        self.profile_photo.setGeometry(13,10,50,50)

        self.profile_photo.setIcon(QIcon(self.photos_path))

        self.profile_photo.setStyleSheet("background-color:dimgray;")

        region = QRegion(self.profile_photo.rect(), QRegion.Ellipse)

        self.profile_photo.setMask(region)

     

        self.layout = QtWidgets.QVBoxLayout()#menünün ve resizenin içinde olduğu layout
        self.sizegrip = QtWidgets.QSizeGrip(self.window)#sağ alttaki resize 

        self.layout.addWidget(self.main_screen_widget, QtCore.Qt.AlignTop | QtCore.Qt.AlignRight)#menünün olduğu stackedwidget

        self.layout.addWidget(self.sizegrip, 0, QtCore.Qt.AlignBottom | QtCore.Qt.AlignRight)#sağ alttaki resize işareti

        self.window.setLayout(self.layout)

            
        

        self.mw = ModernWindow(self.window)  # qtmodern classının metodu önemsiz burası

        self.mw.show()

if __name__  == "__main__":

    

    app = QtWidgets.QApplication(sys.argv)

    ex = MainWindow()

    dark(app)  # qtmodern kütüphanesinin metodu buda önemsiz

    sys.exit(app.exec_())
1 Beğeni

Bir Widget’i konumlandırmak için ben farklı bir şey kullanıyorum. Bu arada programınızı yazarken karışıklığı gidermek adına sınıfınızda UI(), Layouts(), Widgets() adlarında fonksiyonlar yaratmanızı öneririm. Kendi yaptığımı örnek vermek gerekirse:

self.merhabaTitle = QLabel("Merhaba")
self.merhabaTitle.setAlignment(Qt.AlignCenter)

Bu yöntem ile yapmayı deneyebilir misiniz acaba?

bilgi için teşekkürler ama bunu yapsamda bu labellar bir stackedwidgetın içinde olduğu için konumlandıramıyorum sadece stackedwidgetın içinde konumlandırabiliyorum

1 Beğeni