cToast 消息提示组件
cToast 是 VBMan 框架中用于显示消息提示弹窗的核心类,提供简洁优雅的消息提示解决方案。
✨ 核心特性
- 🎯 9种显示位置:支持屏幕居中、四角、四中等9个方位
- 🎨 4种状态主题:信息、成功、警告、危险
- 🌓 2种颜色主题:浅色、深色
- 📦 智能堆叠:自动顺序堆叠或倒序堆叠
- 🖱️ 鼠标悬停暂停:悬停时暂停倒计时,移开后恢复
- 🎭 无焦点窗口:不影响用户当前操作

🚀 快速开始
全局单例(最简使用)
VBMAN 框架提供了全局单例对象,可以在任何地方免New调用:
vb
' 全局单例 - 在任何地方直接调用
VBMAN.Toast.Show "你好,来自任何地方的问候"这是最简单的使用方式,无需创建实例,适合快速提示。
最简使用
vb
' 默认居中显示
With New cToast
.Show "操作成功!"
End With链式调用
vb
' 右上角显示成功提示
With New cToast
.Pos(RightTop).State(Success).Show "保存成功", 2000, "提示"
End With自动堆叠
vb
' 右上角自动堆叠多条消息
With New cToast
.Pos(RightTop)
.State(Success).Show "第一条", 0
.State(Warning).Show "第二条", 0
.State(Info).Show "第三条", 0
End With📚 文档导航
🎯 基本概念
显示位置
cToast 支持9种预设显示位置:
vb
' 左侧系列
LeftTop ' 左上(堆叠)
LeftCenter ' 左中(覆盖)
LeftBottom ' 左下(堆叠)
' 中间系列
CenterTop ' 居上(顺序堆叠)
Center ' 居中(覆盖)
CenterBottom ' 居下(倒序堆叠)
' 右侧系列
RightTop ' 右上(堆叠)
RightCenter ' 右中(覆盖)
RightBottom ' 右下(堆叠)状态主题
vb
Info ' 信息(蓝色)
Success ' 成功(绿色)
Warning ' 警告(黄色)
Danger ' 危险(红色)颜色主题
vb
Light ' 浅色主题(默认)
Dark ' 深色主题💡 常用模式
1. 简单提示
vb
' 信息提示
With New cToast
.Show "这是一条信息提示"
End With
' 成功提示
With New cToast
.State(Success).Show "操作成功!"
End With
' 错误提示
With New cToast
.State(Danger).Show "操作失败,请重试"
End With2. 持久显示(不自动关闭)
vb
With New cToast
.Pos(RightBottom).Show "重要通知:服务器将在今晚22:00进行维护", 0, "系统通知"
End With3. 命名管理
vb
Dim Toast As New cToast
' 为弹窗命名
Toast.Tag("msg1").Pos(RightTop).Show "消息1", 0
' 单独关闭指定弹窗
Toast.CloseMe "msg1"4. 批量管理
vb
Dim Toast As New cToast
' 显示多个弹窗
Toast.Pos(RightTop).State(Success).Show "成功1", 0
Toast.Pos(RightTop).State(Warning).Show "警告1", 0
' 检查数量
Debug.Print "当前弹窗数:" & Toast.Count
' 关闭所有弹窗
Toast.CloseAll🎪 窗体类型
cToast 内部使用两种不同的窗体实现:
| 窗体类型 | 使用位置 | 特点 |
|---|---|---|
| FToastCenter | Center, CenterTop, CenterBottom | 居中显示,底部颜色条 |
| FToastDrawer | 其他6个位置 | 侧边抽屉风格,侧边颜色条 + 标题和内容 |
🎨 预览效果
FToastCenter(居中弹窗)
- 简洁的居中显示
- 底部状态颜色条
- 适合重要提示和确认信息
FToastDrawer(侧边弹窗)
- 左侧或右侧显示
- 侧边状态颜色条
- 包含标题和内容两行
- 适合多条消息堆叠
🔗 相关资源
- 源码位置:
vbman/src/Toast/ - 演示程序:
vbman-demo/demos/Toast/ - 依赖组件:
cShadow(阴影效果)
📝 注意事项
- 居中位置不支持堆叠:Center、LeftCenter、RightCenter 位置调用 InstIndex 无效
- Tag 唯一性:相同 TagName 的弹窗不会重复创建
- 自动堆叠:未手动调用 InstIndex 时,系统会自动堆叠
- 鼠标悬停:悬停时会暂停倒计时,移开后恢复
- 资源释放:窗体卸载时会自动从集合中移除
🤝 社区支持
- 💬 QQ交流群:915520648 点击这里加群