选择器:
statusbar· 设计器组件: 状态栏 · 按名称:statusbar#名称或#名称
支持库: 组件类库 → 状态栏类 · 补全:ztl/statusbar
硬约束与叠画
- 控件名来自窗口 XML「名称」;属性赋值无括号(如
标题 = "确定"),方法调用必须带括号(如刷新())。 - 事件写
函数 控件名.事件名(参数…),形参类型以本页事件表为准。 - 任意控件客户区叠画用支持库 绘制类:
绘制类 g→g.绑组件(本控件名)(组件名无引号)。画布场景编辑见 画布控件。 - 字体对象见绘制文档中的字体类;
置字体(字体类)将字体应用到本控件。 - 不要虚构未列出的方法;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";
}