YStudio Y++

状态栏(statusbar)

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

选择器: statusbar · 设计器组件: 状态栏 · 按名称: statusbar#名称 或 #名称
支持库: 组件类库 → 状态栏类 · 补全: ztl / statusbar

硬约束与叠画

  1. 控件名来自窗口 XML「名称」;属性赋值无括号(如 标题 = "确定"),方法调用必须带括号(如 刷新())。
  2. 事件写 函数 控件名.事件名(参数…),形参类型以本页事件表为准。
  3. 任意控件客户区叠画用支持库 绘制类:绘制类 g → g.绑组件(本控件名)(组件名无引号)。画布场景编辑见 画布控件。
  4. 字体对象见绘制文档中的字体类;置字体(字体类) 将字体应用到本控件。
  5. 不要虚构未列出的方法;YSS 键见下文与 YSS.md。

属性

设计器属性面板与代码侧可读可写属性(来源:组件类库)。

属性 类型 读写 说明
提示 文本 读写 鼠标悬停时的提示文字
鼠标指针 文本 读写 空=默认;可用 arrow/hand/ibeam/cross/wait/no/sizeall 等预设,或.cur/.ani 路径(如 资源/press.cur)
左边 小数 读写 相对窗体左边的位置(像素)
顶边 小数 读写 相对窗体顶边的位置(像素)
宽度 小数 读写 控件宽度(像素)
高度 小数 读写 控件高度(像素)
停靠 整数 读写 0无 1上 2下 3左 4右 5填充;菜单/工具/状态栏仍用专用吸附
可见 逻辑 读写 真=显示,假=隐藏
启用 逻辑 读写 真=可用,假=禁用
句柄 长整数 只读 组件逻辑句柄(1 起,供动画类等绑定;非 HWND);只读
标题 文本 读写 状态栏第0段(拉伸区)文案;也可用 置段文本(0, …)
段列表 文本 读写 每行一段;第0段左侧拉伸,其后各段靠右固定宽
位置 整数 读写 0=吸附底部,1=自由
尺寸模式 整数 读写 0=自适应(随窗宽),1=自由
栏高度 整数 读写 状态栏高度(像素,默认 24)
尺寸握把 逻辑 读写 真=右下角显示窗口缩放握把
文字色 文本 读写 如 #RRGGBB
背景色 文本 读写 如 #2D2D30
显示边框 逻辑 读写 真=显示边框(顶边分隔感)
边框大小 整数 读写 像素
边框颜色 文本 读写 如 #RRGGBB

方法

组件类库方法(调用必须带括号)。下表为带类型签名。

方法 签名 返回 说明
置段文本 无 置段文本(整数 索引, 文本 文本) 无 索引从 0;段0 左侧拉伸
取段文本 文本 取段文本(整数 索引) 文本
取段数 整数 取段数() 整数
加入段 无 加入段(文本 文本) 无 末尾追加;最多 16 段
删除段 无 删除段(整数 索引) 无
置边框 无 置边框([逻辑 显示边框=真], [整数 边框大小=1], [文本 边框颜色], [整数 描边样式]) 无 描边 0实…4双点划
移动 无 移动(小数 左边, 小数 顶边, [小数 宽度], [小数 高度]) 无 可选同时改宽高
置焦点 无 置焦点() 无
刷新 无 刷新() 无 立即重绘所在窗口
显示 / 隐藏 无 显示() / 无 隐藏() 无 等同 可见 = 真/假
置字体 逻辑 置字体(字体类 字体) 逻辑 见 painter.md
状态栏1.置段文本(0, "就绪")
状态栏1.加入段("UTF-8")

事件

在代码中写 函数 控件名.事件名(...) 处理。

事件 参数 说明
单击 整数 X, 整数 Y 鼠标左键单击控件。
双击 整数 X, 整数 Y 鼠标左键双击控件。
右键单击 整数 X, 整数 Y 鼠标右键单击控件。
鼠标按下 整数 X, 整数 Y, 逻辑 按下 鼠标键在控件上按下。按下=真表示当前仍按住。
鼠标抬起 整数 X, 整数 Y, 逻辑 按下 鼠标键在控件上放开。
鼠标移动 整数 X, 整数 Y, 逻辑 按下 鼠标在控件上移动。按下表示左键是否按住。
鼠标进入 整数 X, 整数 Y 鼠标指针进入控件区域。
鼠标离开 整数 X, 整数 Y 鼠标指针离开控件区域。
鼠标左键单击 整数 X, 整数 Y 鼠标左键单击(与「单击」同时触发)。
鼠标左键双击 整数 X, 整数 Y 鼠标左键双击(与「双击」同时触发)。
鼠标中间单击 整数 X, 整数 Y 鼠标中键单击控件。
鼠标齿轮滚动 整数 X, 整数 Y, 逻辑 向上 在控件上滚动鼠标滚轮。向上=真表示向上滚。
鼠标右键单击 整数 X, 整数 Y 鼠标右键单击(与「右键单击」同时触发)。
鼠标右键双击 整数 X, 整数 Y 鼠标右键双击控件。
函数 状态栏1.单击 (整数 X, 整数 Y) {
    // …
}

YSS 样式

以下为样式表(.yss)键与示例;写样式前请先读窗体 XML 取控件 名称 与 typeId,见 window-xml.md。

布局与子选择器

窗体底部状态条。默认吸附底部、与窗口同宽(position: 0 + size-mode: 0),可选右下角尺寸握把。

多段: 属性「段列表」每行一段;第 0 段左侧拉伸,其后各段靠右按文字测宽。属性「标题」与第 0 段同步。空段列表时回退为单段 text。最多约 16 段。仅指针类事件(单击/悬停等),无专用值改变事件。

布局说明: 状态栏用专用「吸附底部」。其它控件默认保持设计尺寸;需要随窗伸缩请用水平/垂直布局,或设 停靠。多段本身不依赖布局。

属性说明(逐键)

段与布局

属性 作用 取值 / 范围 说明与注意
text / title 第 0 段文案 如 "就绪" 与段列表同步
sections / panels / section-list 多段文本 每行一段,或 "就绪\|CAPS\|UTF-8" 段 0 左拉伸,其后靠右测宽;最多约 16 段;空则回退单段 text
position / dock 位置 0 吸附底部 · 1 自由摆放 专用贴底,不等同普通停靠
size-mode / width-mode 尺寸模式 0 自适应宽(贴底同窗宽)· 1 自由宽
bar-height 栏高度 约 16–128,默认 24
size-grip / grip 右下角尺寸握把 true/false

外壳与字体

属性 作用 取值 / 范围 说明与注意
color 段文字色 颜色
background-color / background 栏底色 颜色
border-color / border-width / border-radius / show-border 描边 常画顶边分隔感;贴底栏圆角可忽略
font-size / font-family / font-bold / font-italic 字体 字号常用 12

XML / 设计器 ↔ YSS

设计器项 YSS
标题 / 段列表 text / sections(或代码改段文案)
吸附底部 / 自适应宽 position: 0 + size-mode: 0
栏高 / 尺寸握把 bar-height / size-grip
背景色 / 文字色 / 边框 background-color / color / border-*

状态栏一般不用 :hover 整条铺底;段文案运行时用属性或方法更新。

使用示例

多段贴底栏:

statusbar#状态栏1 {
    sections: "就绪|CAPS|UTF-8";
    position: 0;
    size-mode: 0;
    bar-height: 24;
    size-grip: true;
    background-color: #2D2D30;
    color: #E0E0E0;
    show-border: true;
    border-color: #464646;
}

单段兼容:

statusbar#状态栏1 {
    text: "就绪";
    bar-height: 22;
    font-size: 12;
}

完整示例

statusbar#状态栏1 {
    sections: "就绪|CAPS|UTF-8";
    position: 0;
    size-mode: 0;
    bar-height: 24;
    size-grip: true;
    color: #E0E0E0;
    background-color: #2D2D30;
    border-color: #464646;
    border-width: 1;
    show-border: true;
    font-size: 12;
    font-family: "Microsoft YaHei UI";
}