选择器:
canvas· 设计器组件: 画布 · 按名称:canvas#名称或#名称
完整用法、方法一览与按需求对照见仓库文档 canvas.md。本文侧重样式与设计器属性。
绘制方式(摘要)
| 方式 | 何时用 | 要点 |
|---|---|---|
| 场景图形 | 可点选、可保存再编辑 | 添加矩形 等返回图形ID |
| 手绘路径 | 鼠标拖出笔迹并保留 | 开始路径→线到→结束路径;坐标先 控件到场景X/Y;有选中模式时先 取命中 |
| 即时叠层 | 准星、临时线、HUD | 仅在事件 绘制 内 画线/画文本 等 |
| 像素层 | 涂鸦、位图底 | 锁定像素/置像素/从字节集载入 |
合成顺序:背景 → 像素 → 场景 → 即时。
坐标
- 控件坐标:相对画布左上;鼠标、
取命中、框选、像素 - 场景坐标:含视图平移缩放;
添加*、路径、置位置
控件到场景X/Y · 场景到控件X/Y
默认交互(编辑模式=1)
点选拖动、单选手柄、Ctrl 追加、Shift 框选、中键平移、Ctrl+滚轮缩放;Delete / 方向键 / Ctrl+C·X·V·D·A。详见 canvas.md。
事件
绘制 · 图形单击(图形ID) · 图形双击 · 视图改变 · 选中改变 · 以及通用鼠标事件。
选中改变 无参数;处理函数内用 取选中数 / 取选中列表 读当前选区。
语言属性(YPL)
与设计器面板对应,可在代码中读写:
| 属性 | 说明 |
|---|---|
抗锯齿 |
逻辑 |
允许平移 / 允许缩放 |
逻辑 |
最小缩放 / 最大缩放 |
整数百分比(25=0.25 倍) |
背景色 / 显示边框 / 边框大小 / 边框颜色 |
外观 |
另有布局共用属性:左边/顶边/宽度/高度/可见/启用 等。图元读写用方法(取填充色 / 置位置 …),见 canvas.md。
可用属性(YSS)
| 属性 | 说明 |
|---|---|
background-color / background |
画布底色 |
transparent-background |
真=不铺底色 |
border-color / border-width / border-radius |
边框 |
show-border |
是否显示边框 |
opacity |
整体不透明度(若支持) |
设计器属性(画布)
| 标题 | 含义 | 语言 |
|---|---|---|
| 抗锯齿 | 绘制抗锯齿 | 画布1.抗锯齿 |
| 允许平移 | 中键拖视图 | 画布1.允许平移 |
| 允许缩放 | Ctrl+滚轮缩放 | 画布1.允许缩放 |
| 最小缩放 / 最大缩放 | 缩放范围(整数百分比,25=0.25 倍) | 最小缩放 / 最大缩放 |
XML 属性名与面板标题一致:抗锯齿、允许平移、允许缩放、最小缩放、最大缩放。
YSS 示例
canvas {
background-color: #1A1A1A;
border-color: #464646;
border-width: 1;
show-border: true;
}
canvas#图表 {
background-color: #101010;
}
最小代码示例
函数 窗口1.创建完毕() {
整数 id = 画布1.添加矩形(20, 20, 120, 80)
画布1.置填充色(id, "#4080FF80")
画布1.置描边色(id, "#FFFFFFFF")
输出(画布1.取填充色(id))
}
函数 画布1.选中改变() {
输出("选中数=", 画布1.取选中数())
}
函数 画布1.绘制() {
画布1.置笔触("#66FFFFFF", 1)
画布1.画线(0, 0, 20, 0)
}