Label
2026/4/14大约 3 分钟
最后同步日期:2026-04-15 | Godot 官方原文 — Label
Label
节点继承关系
继承链:Node → CanvasItem → Control → Label
继承自 Control
| 类型 | 名称 | 说明 |
|---|---|---|
| 属性 | Size | 控件尺寸 |
| 属性 | Position | 控件位置 |
| 属性 | AnchorsPreset | 锚点预设 |
| 属性 | GrowDirection | 超出容器时的扩展方向 |
| 属性 | MouseFilter | 鼠标事件过滤(停止 / 通过 / 忽略) |
| 属性 | FocusMode | 焦点模式(无 / 单击 / 全部) |
| 信号 | gui_input | 接收到 GUI 输入事件 |
| 信号 | mouse_entered | 鼠标进入控件区域 |
| 信号 | mouse_exited | 鼠标离开控件区域 |
| 信号 | focus_entered | 获得焦点 |
| 信号 | focus_exited | 失去焦点 |
| 信号 | resized | 尺寸变化 |
| 方法 | GrabFocus() | 获取焦点 |
| 方法 | ReleaseFocus() | 释放焦点 |
| 方法 | SetAnchorsPreset() | 设置锚点预设 |
| 方法 | GetMinimumSize() | 获取最小尺寸 |
继承自 CanvasItem
| 类型 | 名称 | 说明 |
|---|---|---|
| 属性 | Visible | 是否可见 |
| 属性 | Modulate | 整体颜色叠加(乘法) |
| 属性 | SelfModulate | 自身颜色叠加(不影响子节点) |
| 属性 | ZIndex | 绘制层级(Z 轴排序) |
| 信号 | visibility_changed | 可见性变化时触发 |
| 方法 | GetGlobalMousePosition() | 获取鼠标全局坐标 |
继承自 Node
| 类型 | 名称 | 说明 |
|---|---|---|
| 属性 | Name | 节点名称 |
| 属性 | ProcessMode | 处理模式(始终 / 暂停时 / 仅编辑器) |
| 属性 | ProcessPriority | 处理优先级,数字越小越先执行 |
| 信号 | ready | 节点进入场景树并准备就绪 |
| 信号 | tree_entered | 节点进入场景树 |
| 信号 | tree_exited | 节点完全离开场景树 |
| 方法 | GetNode<T>() | 按路径获取子节点 |
| 方法 | AddChild() | 添加子节点 |
| 方法 | RemoveChild() | 移除子节点 |
| 方法 | QueueFree() | 帧结束后释放节点 |
| 方法 | GetParent() | 获取父节点 |
定义
Label 是最简单的文字控件,用来显示一行或多行文字。就像一块写着字的牌子——只能看,不能改。
使用频率:★★★★ 维度专用常用(几乎每个 UI 都有文字显示)
节点用途
- 显示标题、说明文字
- 显示数值(血量、分数)
- 显示提示信息
使用场景
- 主菜单的"开始游戏"标题
- HUD 上的血量文字、分数
- 设置面板的参数名称
常用节点搭配
- 搭配
HBoxContainer做参数标签 - 搭配
MarginContainer加内边距 - 搭配
RichTextLabel混合使用(纯文字用 Label,格式化用 RichTextLabel)
生效必备素材/资源
- 可选:
LabelSettings资源(用于设置字体大小、颜色、阴影等) - 可选:自定义字体文件(
.ttf)
节点属性与信号
自有属性
| 属性 | 类型 | 默认值 | 继承自 | 说明 |
|---|---|---|---|---|
text | string | "" | — | 显示的文字内容 |
horizontal_alignment | 枚举 | Left | — | 水平对齐方式 |
vertical_alignment | 枚举 | Top | — | 垂直对齐方式 |
autowrap_mode | 枚举 | Off | — | 文字超宽时是否自动换行:Word(按单词换行) |
label_settings | LabelSettings | null | — | 字体大小、颜色、阴影等设置 |
uppercase | bool | false | — | 是否全部大写 |
visible_characters | int | -1 | — | 可见字符数(-1=全部,用于打字机效果) |
percent_visible | float | 1.0 | — | 可见文字比例(0~1) |
信号
| 信号 | 触发时机 | 参数 |
|---|---|---|
| (Label 没有特有信号) | — | — |
常用方法
| 方法 | 说明 |
|---|---|
SetText(string) | 设置显示文字 |
GetText() | 获取显示文字 |
SetPercentVisible(float) | 设置可见比例(打字机效果) |
代码示例
C
using Godot;
public partial class LabelDemo : Control
{
public override void _Ready()
{
var label = new Label();
label.Text = "欢迎来到游戏世界!";
label.HorizontalAlignment = HorizontalAlignment.Center;
label.Position = new Vector2(100, 50);
label.Size = new Vector2(300, 50);
AddChild(label);
}
}GDScript
extends Control
func _ready():
var label = Label.new()
label.text = "欢迎来到游戏世界!"
label.horizontal_alignment = HORIZONTAL_ALIGNMENT_CENTER
label.position = Vector2(100, 50)
label.size = Vector2(300, 50)
add_child(label)