57 lines
1.3 KiB
C
57 lines
1.3 KiB
C
#include <stdio.h>
|
||
#include <stdlib.h>
|
||
#include "./includes/console.h"
|
||
|
||
void cusor_moveto(int x, int y) //将光标移动到指定位置
|
||
{ // ESC[y;xH
|
||
printf("\033[%d;%dH", y, x); // 将光标移动到指定位置,x 为横坐标,y 为纵坐标,\033 为 ESC
|
||
fflush(stdout); // 刷新输出缓冲区,立即输出
|
||
}
|
||
|
||
//保存光标位置
|
||
void cusor_get_pos(void)
|
||
{ // ESC[s
|
||
printf("\033[s"); // 保存光标位置
|
||
fflush(stdout);
|
||
}
|
||
|
||
//恢复光标位置
|
||
void cusor_set_pos(void)
|
||
{ // ESC[u
|
||
printf("\033[u"); // 恢复光标位置
|
||
fflush(stdout);
|
||
}
|
||
void cusor_hide(void)
|
||
{
|
||
printf("\033[?25l"); // 隐藏光标
|
||
}
|
||
//清屏
|
||
void clear_screen(void)
|
||
{ // ESC[2J
|
||
printf("\033[2J"); // 清屏
|
||
fflush(stdout);
|
||
}
|
||
|
||
/*
|
||
COLOR_RED 红
|
||
COLOR_BLACK 黑
|
||
COLOR_GREEN 绿
|
||
COLOR_BLUE 蓝
|
||
COLOR_YELLOW 黄
|
||
COLOR_WHITE 白
|
||
COLOR_CYAN 青
|
||
COLOR_MAGENTA 洋红
|
||
*/
|
||
//设置前景颜色
|
||
void set_fg_color(int color)
|
||
{ // ESC[#m
|
||
printf("\033[%dm", color);
|
||
fflush(stdout);
|
||
}
|
||
|
||
//设置背景颜色
|
||
void set_bg_color(int color)
|
||
{ // ESC[#m
|
||
printf("\033[%dm", (color + 10));
|
||
fflush(stdout);
|
||
} |