【Python】QtDesignerで作ったUIを使う

 QtDesignerで作ったuiファイルを読み込めたので、配置したUIを実際に機能させてみる。

 (前の記事:【Python】QtDesignerで作成したUIを表示するだけのコード

QtDesignerで配置したテキストボックス(QPlainTextEdit)に文字を入力

コード

UIファイルは前の記事で作ったものを使ってます

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import sys
import os
from PySide import QtGui
from PySide import QtUiTools
 
class UILayoutTest():
    def __init__(self):
 
        aUILoader = QtUiTools.QUiLoader()   # レイアウト用UIファイルを読み込むのに必要なクラスのインスタンス
        self.mUI = aUILoader.load(os.path.dirname(__file__) + "/UILayout.ui")   # レイアウト用UIファイルを読み込む
        self.mUI.show()                     # 画面に表示する
 
        self.mUI.plainTextEdit.setPlainText("にゃっほい屋へようこそ!")
 
 
app = QtGui.QApplication(sys.argv)
gUILayoutTest = UILayoutTest()
app.exec_()

メモ

10行目
self.mUI = aUILoader.load(os.path.dirname(__file__) + “/UILayout.ui”)
UIファイルを読み込んだこの行の返り値がUIにアクセスするためのハンドル
13行目
self.mUI.plainTextEdit.setPlainText(“にゃっほい屋”)
QtDesignerで作ったテキストボックス(QPlainTextEdit)UIに「にゃっほい屋」と書き込む
self.mUI
QtDesignerで作ったUI
plainTextEdit
QtDesignerでテキストボックスのUIにつけたObjectName
setPlainText(“にゃっほい屋へようこそ!”)
QPlainTextEditの関数。UIに引数のテキストを表示

実行結果

QPlainTextEditに文字を表示(実行結果)

QtDesignerで配置したボタン(QPushButton)が押されたらテキストボックスに文字を表示する

UI

UIは前回のものにボタンを足しました

UI

コード

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import sys
import os
from PySide import QtGui
from PySide import QtUiTools
 
class UILayoutTest():
    def __init__(self):
 
        aUILoader = QtUiTools.QUiLoader()   # レイアウト用UIファイルを読み込むのに必要なクラスのインスタンス
        self.mUI = aUILoader.load(os.path.dirname(__file__) + "/UILayout.ui")   # レイアウト用UIファイルを読み込む
        self.mUI.show()                     # 画面に表示する
 
        self.mUI.setButton.clicked.connect(self.onSetButtonClicked)     # Setボタンが押された際に呼び出されるメソッドを設定
 
    def onSetButtonClicked(self):
        self.mUI.plainTextEdit.setPlainText("にゃっほい屋")       # テキストボックスに「にゃっほい屋」と表示する
 
 
app = QtGui.QApplication(sys.argv)
gUILayoutTest = UILayoutTest()
app.exec_()

メモ

13行目
PySide.QtGui.QPushButton.clicked.connect()
引数をボタンが押されたときに実行するメソッドに設定する
15~16行目
ボタンがクリックされたときに実行すると設定したメソッド

実行結果

setボタンが押されると、テキストボックスに「にゃっほい屋」と表示されます

実行結果

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です