使用 C++将文本光标移动到屏幕中不可见的行
Move text cursor to lines that are not visible in screen using C++
我目前正在编写一个运行优化例程的C++控制台应用程序。它并行运行多个进程,由于需要几个小时才能完成,因此我创建了一种监视器来跟踪进程的演变。我通过在屏幕中打印表格来实现这一点,每次更改流程步骤时,文本光标都会移动到引用该流程的行,并且较旧的文本会被较新的文本覆盖。 为了在表格行中进行移动,我使用 "" 将文本光标向下移动一行,并使用 ESC 字符"\033[F"将光标向上移动一行。
问题是有时表格的行数大于屏幕可容纳的行数,因此有些行保持隐藏状态,需要滚动屏幕才能看到它们。当应用程序向上或向下移动文本光标时,它不能转到隐藏的行,分别停在第一个或最后一个可见行。我想知道是否有某种方法可以访问可见屏幕区域之外的线路。
对于 Windows,请在<Windows.h>
下查看此内容,
HANDLE hStdout = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleCursorPosition(hStdout, { 20, 4 });
其中,"4"表示行(或行以便更好地理解(,"20"表示列(或行上的光标位置(。
相关文章:
- UE4-如何在给定4个屏幕坐标的情况下缩放纹理或材质
- 如何在GTK程序运行时禁用屏幕保护程序/电源管理/屏幕消隐
- 使用 SFML 和 C++ 将 Pixel 打印到屏幕上
- 在 Windows 8/10 技术中完全实时的屏幕捕获,没有延迟
- Winapi:屏幕截图未显示在窗口中
- 如何在快板的屏幕中显示子位图的绘制?
- 按回车键后输出屏幕关闭
- 要在屏幕上绘制一些小瓷砖,我应该使用 QQuickItem 还是 QQuickPaintedItem?
- SFML 向下移动时如何围绕屏幕中心旋转?
- 截取屏幕截图后程序卡住
- C++鼠标单击时的屏幕截图不起作用
- 屏幕插入运算符<<的运算符过载问题
- 获取网格中心的屏幕位置
- SFML 中的字体.信息不显示在屏幕上.显示的不是信息,而是点
- 如何在屏幕上环绕x和y?
- GetDIBits 在屏幕捕获函数中多次迭代后返回零
- OpenGL ES 2.0将纹理绘制到屏幕上是行不通的
- GTKMM:拍摄绘图区域的屏幕截图?
- OpenGL - 添加第二个着色器属性会导致空白屏幕
- 使用 C++将文本光标移动到屏幕中不可见的行