Buttonノードをクリック(button_down)した場合と、
クリックを離した時(button_up)を動的に実装する方法です。
(エディタから「ノード」「シグナル」から接続するのではなくコードで書く)
比較的よく使うと思うので、基本的な書き方を覚えておくと
後々便利でしょう。
self.button_down.connect(self.onMyButtonDown)
func onMyButtonDown():
print("ButtonDown")
selfはボタンにアタッチしたGDScriptで行う場合、「自身」を示すものです。
Pythonではthisにあたるものです。
self.onMyButtonDownは自身に定義・記述している、関数onMyButtonDownをコールする、
ということになります。
関数名は任意なので、onBtnDownなど縮めても良いですし、関数名のルール範囲なら
自由に決めて良いでしょう。
上記のコードをButtonノードに割り当てて実行すると、
クリック(マウスボタン(左)を押した時に)
printデバッグで「ButtonDown」と表示されます。
button_upも同様です。
self.button_up.connect(self.onMyButtonUp)
func onMyButtonUp():
print("ButtonUp")
上記のコードをButtonノードに割り当てて実行すると、
クリック(マウスボタン(左)を離した時に)
printデバッグで「ButtonUp」と表示されます。
self.button_up.connect(self.onMyButtonUp)のbutton_upは
エディタから「ノード」「シグナル」を開くと表示されるシグナルの一覧に
あるシグナル名なので、
動的に実装したい場合は「ノード」「シグナル」に記載しているシグナル名(引数含む)を
記述すればシグナルを実装できます。
また、引数をもつシグナルの場合は引数を与えてあげます。
任意を引数を使う場合は
self.button_down.connect(self.onBtnDown.bind("hogehoge"))
func onBtnDown(str):
print(str)
上記のように記述すれば、任意の引数を割り当てることが出来ます。
コメント