是否可以在控制台中为给定的行着色而不向其写入文本?

Posted

技术标签:

【中文标题】是否可以在控制台中为给定的行着色而不向其写入文本?【英文标题】:is it possible to color one given line in console without writing text to it? 【发布时间】:2012-05-14 20:47:49 【问题描述】:

这通常由SetConsoleTextAttribute() 完成,然后写入文本。但是可以在将文本写入行后更改行颜色吗?

【问题讨论】:

【参考方案1】:

至少如果记忆有用,WriteConsoleOutputAttribute 可以做到这一点。

编辑:...或者,如果你想要一个块都设置为相同的属性,你可以使用FillConsoleOutputAttribute

【讨论】:

【参考方案2】:

不可以,但是您可以将光标设置回该行,更改颜色,重写文本,然后跳回到跳转之前光标所在的位置进行重写。

我不是专业的 c++ 程序员(尽管今天穿着我的“Hello World!”T 恤☺),所以我无法为您提供任何帮助...

【讨论】:

ReadConsoleOutputAttribute 可让您阅读屏幕上已有的内容。

以上是关于是否可以在控制台中为给定的行着色而不向其写入文本?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 UITextView 中为文本着色

在 Eclipse 控制台中为日志着色

如何根据某些搜索模式在 unix 中为文本文件着色?

在VBA中是否有一种方法可以自动在列中为重复值写入文本? [关闭]

有没有办法在占位符文本 QML 中为特定单词着色?

如何在 Windows 控制台中为特定像素着色