Pyside勉強 その弐
続き。
ハローワールドのスクリプトはこれぐらいにして
続いてプッシュボタンについて。
これも前回記載したサイトに載っているものです。
こちらはイキナリMAYAに落とし込んだコードです。↓
# -'''- coding: utf-8 -'''- import sys from PySide.QtCore import * from PySide.QtGui import * def sayHello(): print "Hello World!" button = QPushButton("Click me") button.clicked.connect(sayHello) button.show()
実行すると、こんな感じに
ボタンを押すと、Hello World!って出力される
シンプルなものです。
以下に説明を記載します。
# -'''- coding: utf-8 -'''-
このコマンドを記載することで、UTF8にエンコードしてくれます。
記載しない限りは2バイト文字は文字化けしますので
注意が必要です。
詳しくは、こちらを参照に…
qiita.com
次、
def sayHello():
このコマンドは、def文といい、関数になります。
sayHelloは関数名になります。
この辺りはPythonの基本ですね。
一応note.nkmk.me
button = QPushButton("Click me")
前回のLabel同様に、UIパーツあたります。
QPushButtonはMAYAでいう、cmds.button()と同じです。
Pyside側のボタンを設定するメソッドです。
()中は、ボタンに表示される文字列です。
後から変更する場合は
button.setText("Push!Push!")
とします。
これでボタンの表示が変更されます。
言葉通りですが、ボタンが格納されている変数に対して
【setText】メソッドで中身を替えています。
ボタンにアイコンを仕込む時は
button.setIcon(QIcon('D:/button.jpg'))
とします。
setIconでアイコンをセットする命令を出し()内で
アイコンのファイルを指定しています。
※青い画像を指定しています。
色を変える時は、スタイルシートを使いますが
長くなるので後述します。
button.clicked.connect(sayHello)
ボタンが押された。という変更を取得し、押されたあと
関数【sayHello】に接続しています。
要はボタン押したら、関数実行しますね。って事。
MAYAだと、button(command=Function)としますが
それと同じです。
最後の一行は前と同じなので割愛。
ボタンというパーツを読み込み
クリックされたら、関数実行する。
というかなりシンプルなものです。
はい。
こんな感じです。
関数を使ったぐらいですが、これが肝なので
書いてみました。
以上です。