我们都很熟悉文本的突出显示。在Windows操作系统上的任何应用程序中,悬停在任何“文本”上,光标就会变成I-束,您可以单击并拖动文本来突出显示它。此高亮显示的文本可复制到剪贴板以供以后使用。
一些应用程序通过更改颜色、不透明度或甚至形状来修改默认的高亮显示行为。一些应用程序允许列选择(例如Visual“allow拖动”创建框,如高亮显示)
我已经搜索了互联网的深度,但我似乎找不到可靠的信息来源来解释如何修改文本高亮的行为。
如何实现列/块文本选择,以及如何修改已编译应用程序中突出显示的文本的外观。
发布于 2015-07-29 16:53:15
我不知道你的问题中的网络应用部分是什么意思。web应用程序是使浏览器与系统交互的一些HTML、JS和CSS。web应用程序提供的任何自定义选择(着色)逻辑都必须由浏览器实现。
此外,你必须意识到“(文本)选择”是一个相当虚拟的原则。应用程序只需呈现彩色形状(如蓝色矩形),并在收到WM_COPY消息时将某些内容复制到剪贴板。
Windows在用于(富)编辑控件的基本子字符串选择功能中提供(即开始和结束位置),但是对于自定义的列选择,需要定制代码。
在做一个矩形的选择在一个RichTextBox与Alt-左鼠标扫描?中了解更多关于这一点的内容。
发布于 2015-07-29 16:24:40
由于应用程序可以通过各种自定义方式完成此操作,因此没有单一的解决方案来更改所有这些解决方案的文本选择样式。
许多人将依赖当前的配色方案(使用GetSysColor)来确定高亮颜色。因此,您可以修改方案,并可能影响许多应用程序使用的颜色。
要以编程方式完成此操作,您需要使用SetSysColors来更改COLOR_HIGHLIGHT和COLOR_HIGHLIGHTTEXT值。
其他应用程序可能依赖于当前主题(使用GetThemeColor)。要影响这些人,你必须选择一个不同的主题,它有你想要的颜色(也许还有其他的造型选择)。
很多应用程序都使用自己的硬编码配色方案,所以你根本无法编程。
https://stackoverflow.com/questions/31705075
复制相似问题