当前位置: 首页 > news >正文

屏幕上那个灰色带有数字的框是什么?看着好难受!

为什么屏幕上出现了一个灰框,里面有黑色数字,而且还不消失?强迫症难以忍受啊!


各种背景下的灰框
▲ 就是这个置于所有窗口最顶层,怎么也去不掉的灰色数字框

强迫症晚期请直接前往最后一节把它消灭好了,非强迫症晚期的我们一起来探究下它到底是什么。

使用 Spy++

想探究一个界面属于哪个进程,当然少不了 Spy++。现在,我们去 Visual Studio 中找到并打开 Spy++。

启动 Spy++

于是,我们会看到一个丑的不得了的 Spy++ 的界面:

Spy++

紧接着,我们点击查找窗口(查找窗口 )按钮开始查找窗口:

查找窗口

我们发现,当我们将那个瞄准靶心指向灰色小窗口上时,这个窗口的句柄和其他信息已经显示。

查找窗口

于是,点击“确定”来查看这个窗口的信息。

居然是 Visual Studio 的某个子窗口
▲ 居然是 Visual Studio 的某个名为 CandidateWindow 的子窗口

猜测和搜索

现在我们得到了这些线索:

  • 这是 Visual Studio 的窗口
  • 这个窗口的类名叫做 CandidateWindow
  • 这一定是 Visual Studio 的 BUG,可以被我们疯狂吐槽

现在我们有了搜索关键字:Gray Box,Candidate Window,Visual Studio。

搜索果然能发现有人遇到了这个问题(特别吐槽没有中文的,于是才有了本文)。有用的搜索资料见本文最后的 参考资料。

解决问题

从搜索的结果中,我们可以得知,这是 Visual Studio 用来在 CodeLens 上显示辅助提示的指示窗口。解决方法便是在代码编辑窗口中长按 Alt 键重新打开辅助指示窗口,然后松开 Alt 键关掉这些窗口

试一试长按 Alt 键,果然出现了一模一样的窗口:

长按 Alt 打开的指示窗口

松开 Alt 后,之前一直不消失的灰色数字窗口终于消失,世界顿时清静了。

Alt 指示窗口是什么?

其实这是 Windows 提供的一项功能,用于在仅有键盘的设备上能够操作各种菜单。下图是在资源管理器中长按 Alt 出来的键盘按键提示,按下键盘对应的键可以进入对应的功能。

资源管理器的 Alt 指示


参考资料

  • Grey box with number sticks at top left corner of screen - Developer Community
  • number in upper-left corner of screen - Developer Community
  • Visual Studio leaving numbers in tooltips on desktop - Developer Community
  • visual studio 2012 puts a small number in the top left corner of my screen - Stack Overflow

相关文章:

  • Roslyn 入门:使用 Roslyn 静态分析现有项目中的代码
  • Roslyn 入门:使用 Visual Studio 的语法可视化窗格查看和了解代码的语法树
  • 利用 ReSharper 自定义代码中的错误模式,在代码审查之前就发现并修改错误
  • 在编写异步方法时,使用 ConfigureAwait(false) 避免使用者死锁
  • (C#)if (this == null)?你在逗我,this 怎么可能为 null!用 IL 编译和反编译看穿一切
  • 解决 mklink 使用中的各种坑(硬链接,软链接/符号链接,目录链接)
  • Roslyn 的确定性构建
  • 使用 MSBuild 响应文件 (rsp) 来指定 dotnet build 命令行编译时的大量参数
  • VS 编译太慢了吗?新建解决方案配置关闭一部分项目的编译
  • 流畅设计 Fluent Design System 中的光照效果 RevealBrush,WPF 也能模拟实现啦!
  • 语义版本号(Semantic Versioning)
  • 使用 GitVersion 在编译或持续构建时自动使用语义版本号(Semantic Versioning)
  • UWP 流畅设计中的光照效果(容易的 RevealBorderBrush 和不那么容易的 RevealBackgroundBrush)
  • 使用 Emit 生成 IL 代码
  • 如何快速编写和调试 Emit 生成 IL 的代码
  • C++11: atomic 头文件
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • PHP变量
  • Python 基础起步 (十) 什么叫函数?
  • SpringCloud(第 039 篇)链接Mysql数据库,通过JpaRepository编写数据库访问
  • SwizzleMethod 黑魔法
  • 复杂数据处理
  • 关于Flux,Vuex,Redux的思考
  • 手写双向链表LinkedList的几个常用功能
  • 为什么要用IPython/Jupyter?
  • 系统认识JavaScript正则表达式
  • Nginx惊现漏洞 百万网站面临“拖库”风险
  • ​ArcGIS Pro 如何批量删除字段
  • ​卜东波研究员:高观点下的少儿计算思维
  • ​第20课 在Android Native开发中加入新的C++类
  • ​猴子吃桃问题:每天都吃了前一天剩下的一半多一个。
  • $.ajax()
  • (14)Hive调优——合并小文件
  • (2)MFC+openGL单文档框架glFrame
  • (超详细)2-YOLOV5改进-添加SimAM注意力机制
  • (待修改)PyG安装步骤
  • (附源码)springboot金融新闻信息服务系统 毕业设计651450
  • (一)基于IDEA的JAVA基础12
  • (一)使用IDEA创建Maven项目和Maven使用入门(配图详解)
  • .net core MVC 通过 Filters 过滤器拦截请求及响应内容
  • .Net MVC4 上传大文件,并保存表单
  • .NET 的程序集加载上下文
  • .Net中的设计模式——Factory Method模式
  • .Net组件程序设计之线程、并发管理(一)
  • .考试倒计时43天!来提分啦!
  • /usr/local/nginx/logs/nginx.pid failed (2: No such file or directory)
  • :not(:first-child)和:not(:last-child)的用法
  • [20170705]diff比较执行结果的内容.txt
  • [3300万人的聊天室] 作为产品的上游公司该如何?
  • [C++]priority_queue的介绍及模拟实现
  • [C++]模板与STL简介
  • [dfs] 图案计数
  • [EFI]Acer Aspire A515-54g电脑 Hackintosh 黑苹果efi引导文件
  • [iOS]让Xcode 4.2生成的app支持老的iOS设备(armv6)
  • [iOS]如何删除工程里面用cocoapods导入的第三方库