c++linux控制台清除屏幕的一个区域
c++ linux console clear an area of the screen
我正在尝试创建一个函数来清理屏幕上的一个区域。这是我的功能:
void clearBuffer(CoordCR start, CoordCR end) const // Clear an area on screen
{
for (int i1 = 0; i1 < end.COLS; i1++)
{
for (int i2 = 0; i2 < end.ROWS; i2++)
{
setCursorPos(start.COLS + i1 - 1, start.ROWS + i2 - 1);
printf(" ");
}
}
}
setCursorPos只是一个改变光标位置的函数,用来写"字符,从而清除屏幕。seCursorPos的第一个参数是要走的列,第二个参数是行。我的CoordCR结构是:
struct CoordCR {
int COLS;
int ROWS;
};
我只给这个函数左上角和右下角,她用空格代替所有字符。这个功能在windows上运行得很好,但她在linux上被窃听了,我不明白为什么。谢谢你的帮助。
setCursorPos是一个Win-API函数。对于Linux版,您可以在以下线程中找到答案:如何在linux上用C设置鼠标光标的位置?
嗯。。。SetCursorPos(注意不同的大小写)是一个Win32函数。关于如何在linux上的c中设置鼠标光标位置的链接,除了简短地提到ncurses之外,大部分内容都与此无关。对于给定的简单示例,通常使用ncurses的低级termcap接口,即tgoto来定位光标。这将允许您使用printf在屏幕上进行书写。带参数的termcap问题提到了这一点——但请阅读整个termcap手册页面(您必须首先使用tgetent初始化)。
相关文章:
- 创建一个类来访问和指定向量类型,并构建一个获取位置并为其分配区域的类
- 为 pcl::P ointCloud 数据指定一个区域并获取可用点数
- QWT仅重点一个特定区域
- 有选择地启用一个并行区域内的OpenMP进行循环
- 查找一个区域中未包含在另一个区域中的第一个元素
- 使用wxWidget创建一个带有浮雕的矩形区域
- 无法正确访问在另一个类的私人区域内声明的类
- 尝试在Qt中仅更新小部件中的一个矩形,但整个小部件的区域都会更新
- c++linux控制台清除屏幕的一个区域
- 将一个映像的区域复制到另一个映像中的另一个区域
- 如何选择一个像魔杖一样的区域,并使用OpenCV进行泛洪填充
- 如何检测并在眼睛的虹膜区域周围画一个圆圈
- 需要用android opencv在柜台区域绘制一个矩形
- OpenGL:如何剪辑一个2D区域,以避免文本与GlutBitmap被打印出该区域
- 如何标记一个区域,使叮当格式不会碰到它?
- 如何创建一个可以随时间扩展的共享内存区域?
- 给定一个矩形区域和一组矩形,检查它们是否覆盖了整个区域
- QT: leaveEvent -检查光标是否在一个小部件的区域
- 请给我一些建议,如何评估一个最大的区域,涵盖所有给定的区域
- QPaintEvent -只更新屏幕的一个区域