YStudio Y++

YSS · 画布(canvas)

Y++ / YStudio 开发文档 · 一点滴

选择器: 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)
}