【軽量】godot engine【無料】 part5at GAMEDEV【軽量】godot engine【無料】 part5 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト20:名前は開発中のものです。 25/11/07 12:47:12.11 NCON4E65.net すみませんもうちょっと詳細に書きます 例えば以下のスクリプトを適当なノードに貼り、その子にTextEditを持たせるとします func _physics_process(_delta: float) -> void: if Engine.get_physics_frames() == 500: #時間経過で$TextEditを削除 $TextEdit.queue_free() func _input(event: InputEvent) -> void: if event is InputEventKey: #キー入力を記録 print(event) この状態で適当なキー(たとえば右矢印キー)を押して離すと下記のように出力されます InputEventKey: keycode=4194321 (Right), mods=none, physical=false, location=unspecified, pressed=true, echo=false InputEventKey: keycode=4194321 (Right), mods=none, physical=false, location=unspecified, pressed=false, echo=false 自分が解放イベントと呼んでいるのはpressed=falseなInputEventKeyの事です TextEditに何かしら日本語を入力して確定せず待機し、TextEditがqueue_freeで削除されるまで待ちます その後に右矢印キーを押して離すと下記のように出力されます InputEventKey: keycode=4194321 (Right), mods=none, physical=false, location=unspecified, pressed=true, echo=false 見ての通りpressed=falseなInputEventKeyが出力されません、 同様にインプットマップの組み込みアクションであるui_rightなども入力され続ける状態になっています 次に何かしらキーを離した時は通常の挙動に戻ります 削除そのものが原因ではなく、コードによりIMEの確定待ち状態が解除されることが原因のようです 上記コードのqueue_freeをapply_imeやcancel_ime、release_focusに変更しても同じ現象が起こります TextEditに限らずLineEditでも同じ現象が起こります 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch