Python 3 – PyQtグリッド-Pythonチュートリアル

PyQt QGridLayout 別のタイプのレイアウトです。
通常、ウィジェット(ボタン、ラベルなど)は次のように配置します。 .move(x、y)。 グリッドではそうではありません。

ウィジェットをAxB形式で配置します。 ここで、Aは列の数、Bは行の数です。 あなたがExcelで見るものに似ています。

QGridLayoutはPyQt5.QtWidgetsの一部です。

関連コース: PythonPyQt5でGUIアプリを作成する

QGridLayout

1行のコードでQGridLayoutまたはグリッドを作成できます。

グリッドを使用するようにウィンドウに指示します。

ウィジェットは、次の方法でグリッドに追加できます。

1
grid.addWidget(widget,col,row)

pyqtグリッド

グリッドの例

以下のコードは、ボタンのグループを含むレイアウトを作成します。 ネストされたforループを使用して、ボタンのグループを追加します。

グリッドを作成する重要な部分は次のとおりです。

1
2
3
4
5
6
7
grid = QGridLayout()

for i in range(0,5):
for j in range(0,5):
grid.addWidget(QPushButton(str(i)+str(j)),i,j)

win.setLayout(grid)

コードの残りの部分は、単にウィンドウを作成します。 ただし、コピーと貼り付けは簡​​単です。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QGridLayout, QPushButton
from PyQt5.QtGui import QIcon
from PyQt5.QtCore import pyqtSlot

def window():
app = QApplication(sys.argv)
win = QWidget()
grid = QGridLayout()

for i in range(0,5):
for j in range(0,5):
grid.addWidget(QPushButton(str(i)+str(j)),i,j)

win.setLayout(grid)
win.setWindowTitle("PyQt Grid Example")
win.setGeometry(50,50,200,200)
win.show()
sys.exit(app.exec_())

if __name__ == '__main__':
window()

Python PyQtを初めて使用する場合は、 それなら私はこの本を強くお勧めします。

例をダウンロード

Hope this helps!

Source link