Godot 4.2.1设置Button的rect_min_size报错求助
问题原因
Godot 4.x对Control节点的属性做了重命名,你代码里用的rect_min_size和rect_position是Godot 3的属性名,在Godot 4中已被替换,直接赋值会触发类型不匹配报错(可能是你查看了对应不上版本的文档导致混淆)。
修复方案
将代码中的rect_min_size替换为min_size,rect_position替换为position,这两个是Godot 4中对应的属性,类型均为Vector2,符合你的赋值需求。
修复后的完整代码
# Dieses Skript verwaltet den Hauptbereich mit dem 16x16 Raster. extends Control func _ready(): # Erstelle ein 16x16 Raster aus quadratischen Kacheln. for x in range(16): for y in range(16): var kachel = Button.new() # Verwendung von Buttons als Platzhalter für Kacheln kachel.min_size = Vector2(40, 40) # Godot 4对应的最小尺寸属性 kachel.position = Vector2(x * 40, y * 40) # Godot 4对应的位置属性 add_child(kachel)
补充说明
- 若你查看的是Godot 3版本的文档,会出现属性名不匹配的情况,建议切换到Godot 4.x的官方文档查看Control节点的属性列表。
- 除了
min_size和position,Godot 4还对Control的其他rect_*属性做了改名,比如rect_size改为size、rect_global_position改为global_position等,迁移代码时需要注意这些变化。
内容的提问来源于stack exchange,提问作者ediweber
相关产品推荐
相关产品推荐

