该版本仍在开发中,尚未被视为稳定。最新稳定版本请使用Spring Shell 3.4.1spring-doc.cadn.net.cn

状态栏视图

StatusBarView 是一个基础实现,提供绘制状态栏的功能。StatusBarView 继承自 BoxViewspring-doc.cadn.net.cn

┌─────────────────────────────┐
│ Item1 | Item2 | Item3       │
└─────────────────────────────┘

你可以创建一个简单的状态栏,包含一个物品:spring-doc.cadn.net.cn

StatusItem item1 = new StatusBarView.StatusItem("Item1");
StatusBarView statusBar = new StatusBarView(List.of(item1));

构造函数可以采用数组形式,从而实现简单的布局 DSL风格的项目定义spring-doc.cadn.net.cn

new StatusBarView(new StatusItem[] {
	StatusItem.of("Item1"),
	StatusItem.of("Item2")
		.setAction(() -> {}),
	StatusItem.of("Item3")
		.setAction(() -> {})
		.setHotKey(Key.f10)
});

项目支持可运行的作,通常执行于 选中了物品。它也可以连接到快捷键。spring-doc.cadn.net.cn

StatusItem item1 = StatusBarView.StatusItem.of("Item1");

Runnable action1 = () -> {};
StatusItem item2 = StatusBarView.StatusItem.of("Item2", action1);

Runnable action2 = () -> {};
StatusItem item3 = StatusBarView.StatusItem.of("Item3", action2, KeyEvent.Key.f10);

StatusBarView statusBar = new StatusBarView();
statusBar.setItems(List.of(item1, item2, item3));

事件

表1。StatusBarView 活动
事件 描述

StatusBarViewOpenSelectedItemEventspring-doc.cadn.net.cn

已选中状态项。spring-doc.cadn.net.cn