QGridLayoutشرح ال

 QGridLayout

 

  مقسمة إلي صفوف وأعمدة يتم وضع العناصر داخها عن طريق تحديد الصف والعمود لكل عنصر 

Create object of QPushButton:

 

gridlayout = QGridLayout()

Functions:

setColumnStretch(column, span)

تمد حجم العمود لتجعله يتكون من كذا عمود معا(توسع العمود بدمجه مع أعمدة آخري)

                                 :columnspanوطول العنصر كذا rowspan تضيف العناصر في صفوف وأعمدة عرض العنصر كذا

addWidget(QWidget, int r, int c, int rowspan, int columnspan)

addWidget(QWidget, int r, int c)

تضيف العنصر في صف معين وعمود معين

addLayout(QLayout, int r, int c)

في مكان معين برقم الصف والعمودgridlayout مصغرة إلي الlayoutتضيف  

setSpacing()

المسافة بين عناصر الصف

setMenuBar()

gridlayout تضيف شريط  القوائم إلي ال

: من جميع الجهات عن النافذةlayoutتحدد المسافة بين ال

setContentsMargins(شمال,فوق,جنوب,تحت)

 

EX:

 

from PyQt5.QtWidgets import *
import sys
class window(QWidget):
    def __init__(self):
        super(window, self).__init__()
        self.resize(800, 200)
        btn1 = QPushButton()
        btn1.setText("click_1")
        btn2 = QPushButton()
        btn2.setText("click_2")
        btn3 = QPushButton()
        btn3.setText("click_3")
        btn4 = QPushButton()
        btn4.setText("click_4")

        self.gridlayout = QGridLayout()  # create QGridLayout
        self.gridlayout.setColumnStretch(0, 5)
        self.gridlayout.setSpacing(20)  # add space between items in same row

        self.gridlayout.addWidget(btn1, 0, 0) # add btn1 to row(0) and column(1)
        self.gridlayout.addWidget(btn2, 0, 1) # add btn1 to row(1) and column(0)
        self.gridlayout.addWidget(btn3, 1, 0) # add btn1 to row(1) and column(1)
        # self.gridlayout.addItem(btn4, 1, 2, 5, 5,Qt.Alignment)
        self.gridlayout.addWidget(btn4, 1, 1)  # add btn1 to row(1) and column(2)

        menu = QMenuBar()
        menu.addAction("sava")
        menu.addAction("view")
        self.gridlayout.setMenuBar(menu)

        self.setLayout(self.gridlayout)  # add gridlayout to widget
        btn1.clicked.connect(self.btn)
    def btn(self):
        self.removeWidget(self.gridlayout)
if __name__=='__main__':
    app = QApplication(sys.argv)
    wind = window()
    wind.show()
    app.exec()

 

Comments

Popular posts from this blog

QFormLayoutشرح ال