【軽量】godot engine【無料】 part4 (833レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
817: 08/20(水)11:26 ID:8BIAqddk(1/2) AAS
# connect() の Callable とは?

Godot 4.x から connect() の仕様が変わり、シグナル接続時に Callable クラスを使うようになりました。

記述例(4.x):
button.connect("pressed", Callable(self, "_on_button_pressed"))

Callable は「あるオブジェクトの特定のメソッドを呼び出すための参照」を表すクラスです。
記述例のように connect() によるシグナル接続時に Calalble コンストラクタの第一引数に実行したいメソッドを持つオブジェクト、第二引数に実行したいメソッドを記述します。
これらの引数はそれぞれ第一引数はオブジェクト参照、第二引数はそのオブジェクトが持つメソッド名(文字列)となります。

Godot 4.x では以下のような 3.x の (target, method_name) 形式は廃止され、第2引数に Callable を渡すことが必須になりました。
省8
818: 08/20(水)11:28 ID:8BIAqddk(2/2) AAS
# なぜ Callable を経由するのか?

簡潔にまとめると、以下のメリットがあります。

1. 安全性(未定義メソッドを is_valid() で事前検出可能)
2. IDE 補完・リファクタリング対応(文字列指定ではできなかった恩恵)
3. 統一性(シグナル以外でも「関数参照」として利用可能)
4. 柔軟性(ラムダでシンプルに書ける)
5. 将来性(Godot 4.x 以降の標準記法)
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.031s