创建statusBar

 //  创建状态条,第一个参数为位置,第二个参数为优先级myStatusBarItem = vscode.window.createStatusBarItem(vscode.StatusBarAlignment.Right, 100);// 为状态条注册命令myStatusBarItem.command = myCommandId;//   状态条文本显示myStatusBarItem.text="Nothing is selected!";// 当鼠标放在上面的时候显示的内容myStatusBarItem.tooltip="statusBar test!";//   添加进去subscriptions.push(myStatusBarItem);

为statusBar创建命令

//   命令名称const myCommandId = 'sample.showSelectionCount';//   注册命令subscriptions.push(vscode.commands.registerCommand(myCommandId, () => {//   从编辑器获取他所选择的行数const n = getNumberOfSelectedLines(vscode.window.activeTextEditor);// 当点击statusBar时执行的反馈操作:返回选择了多少行vscode.window.showInformationMessage(`Yeah, ${n} line(s) selected... Keep going!`);}));

相关的功能函数

//   实时更新函数
function updateStatusBarItem(): void {const n = getNumberOfSelectedLines(vscode.window.activeTextEditor);if (n > 0) {myStatusBarItem.text = `$(megaphone) ${n} line(s) selected`;//  当有所选择时显示状态条myStatusBarItem.show();} else {//    当未选择时隐藏状态条myStatusBarItem.hide();}
}// 获取选择条数函数
function getNumberOfSelectedLines(editor: vscode.TextEditor | undefined): number {let lines = 0;if (editor) {lines = editor.selections.reduce((prev: number, curr: { end: { line: number; }; start: { line: number; }; }) => prev + (curr.end.line - curr.start.line), 0);}return lines;
}

在activate函数里运行实时更新函数

export function activate({ subscriptions }: vscode.ExtensionContext) {// 命令名称const myCommandId = 'sample.showSelectionCount';//   注册命令subscriptions.push(vscode.commands.registerCommand(myCommandId, () => {//   从编辑器获取他所选择的行数const n = getNumberOfSelectedLines(vscode.window.activeTextEditor);// 当点击statusBar时执行的反馈操作:返回选择了多少行vscode.window.showInformationMessage(`Yeah, ${n} line(s) selected... Keep going!`);}));// 创建状态条,第一个参数为位置,第二个参数为优先级myStatusBarItem = vscode.window.createStatusBarItem(vscode.StatusBarAlignment.Right, 100);// 为状态条注册命令myStatusBarItem.command = myCommandId;//   状态条文本显示myStatusBarItem.text="Nothing is selected!";// 当鼠标放在上面的时候显示的内容myStatusBarItem.tooltip="statusBar test!";//   添加进去subscriptions.push(myStatusBarItem);// register some listener that make sure the status bar // item always up-to-datesubscriptions.push(vscode.window.onDidChangeActiveTextEditor(updateStatusBarItem));subscriptions.push(vscode.window.onDidChangeTextEditorSelection(updateStatusBarItem));// update status bar item once at startupdateStatusBarItem();
}

VScode 状态条 StatusBar相关推荐

  1. Android官方开发文档Training系列课程中文版:管理系统UI之隐藏状态条

    原文地址:http://android.xsoftlab.net/training/system-ui/status.html 这节课将会介绍如何隐藏不同的版本的状态条.隐藏状态条可以使内容展示区域更 ...

  2. java工具栏的工具提示,动态菜单项、状态条提示、工具条提示问题

    问题的提出: 一个应用程序想要动态改变菜单项.使用CCmdUI::SetText("Menu Text")可以改变菜单文本,但是如何动态改变工具条和状态条的文本呢? 有几种策略,避 ...

  3. Swift - 项目部署配置(支持的系统,设备和状态条样式等)

    点击项目,在General选项卡中的"Deployment Info"栏目中可以进行一些项目的配置 Deployment Target:支持的iOS SDK的最低版本 Device ...

  4. 找回丢失已久的输入法状态条

    董师傅教你:借助控制面板和注册表设置解决输入法状态条丢失问题 董师傅知道,很多读者都遇到过这样的情况,想输入汉字的时候却突然间发现自己的输入法状态条不见了,没法输入汉字.这怎么办呢?下面我就简单介绍一 ...

  5. css 状态条动画_CSS动画的状态

    css 状态条动画 多年来,CSS已经以多种方式成熟,尤其是在CSS动画方面. 随着时间的流逝,越来越多的开发人员正在创建生活,呼吸的界面. 在本文中,我们将研究CSS动画的状态,它的增长方式,今天的 ...

  6. fcitx切换半角/全角,显示状态条

    今天不知道怎么变成全角了,而且点一下输入法状态条,状态条就消失了. 搜了下, 参看http://forum.ubuntu.org.cn/viewtopic.php?t=246277 可以用ctrl+a ...

  7. 【PB】Windows 状态条控件在 PB 中的运用

    Powerbuilder 所提供的 MDIHelp! 窗口类型带有一个 Sybase 自制的类似状态条的控件(严格说它并非是控件),用户可以通过调用 SetMicroHelp( ) 函数修改该控件的显 ...

  8. 如何设置微软拼音状态条上的图标

    如果您想自己定制微软拼音状态条上的图标,可以点击状态条最右侧的向下箭头,然后在下拉菜单中选择您需要的功能图标.

  9. XP输入法状态条不见了

    打开注册表编辑器,找到"HKEY_USERS\.DEFAULT\Control Panel\Input Method"分支,将右边窗口中"Show Status" ...

最新文章

  1. 使用python中的库matplotlib绘制箱线图(boxplot)
  2. 分析器错误(在浏览器中查看.aspx)
  3. c语言中一百以内相乘的积,一百以内的加减乘除法游戏....
  4. 将应用打包为 Snaps
  5. 详解get与post请求方式、content-type与responseType、@Requestbody与@Requestparam的使用场景
  6. poj 2031 BuildingaSpaceStation 最小生成树 Prim、Kruskal
  7. python list add_Python的List方法附加和扩展有什么区别?
  8. 使用PHP输出中文JSON字符串
  9. cam全称_在ADU高级参数(parameter)中,术语CAM全称是什么?
  10. 《嵌入式 - STM32开发指南》手把手教你搭建STM32开发环境 [Linux版 - 1]
  11. 基于java的自驾游自助游旅游网站
  12. shell插入多行文本
  13. Android UI个性style
  14. 美颜滤镜SDK有什么效果?美颜SDK可以自主开发吗?
  15. wp教程-wp详细教程-免费wordpress模板主题搭建教程
  16. ​企业商城APP开发制作的3种方式各需要多少钱
  17. 易语言实现视频播放功能
  18. 怎么获取网页高度、屏幕高度、滚动高度?
  19. 刷脸更安全 人脸识别门禁开启安防新思路
  20. 浅谈数据中心新型末端母线配电系统-Susie 周

热门文章

  1. opencv+QT在嵌入式arm下显示图片
  2. Git——pull request提交实战
  3. Android免Root执行脚本,无Root可以修改权限的目录 :/data/local/tmp
  4. TypeScript高级类型-Partial、Required、Pick、Omit、Readonly
  5. C# particle class
  6. 十二 焦距与视野角的关系
  7. JavaScript 修改样式属性
  8. dude由于目标计算机,TheDude中文实用指导.pdf
  9. 计算机毕设(附源码)JAVA-SSM基于专家系统房产营销智能推荐系统
  10. 微信小程序:电影选票系统 (简易版) 可以选择场次座位并生成订单