控制台光标相关

来源:互联网 发布:淘宝客服打字要求 编辑:程序博客网 时间:2024/06/06 16:28

关于控制台光标操作

内容:

  • 声明句柄

    Handle hout = GetStdHandle(STD_ OUTPUT_HANDLE);

  • 定义坐标,获得控制台屏幕缓冲区信息,获得控制台屏幕光标信息

    COORD coord; //声明坐标
    CONSOLE_ SCREEN_ BUFFER_ IBFO csbi; //声明控制台屏幕缓冲区信息
    GetConsoleScreenBuffer(hout,&csbi);    //获得控制台屏幕缓冲区信息
    coord.X = csbi.dwCursorPosition.X;     //获得当前光标x坐标
    coord.y = csbi.dwCursorPosition.Y;     //获得当前光标y坐标

  • 上下左右,回车等键的键码

    0xE0: 上下左右等键的键码
    0x0d: 回车键键码
    0x48: 上键键码
    0x50: 下键键码
    0x4b: 左键键码
    0x4d: 右键键码

  • 设置控制台屏幕光标位置

    SetConsoleCursorPosition(hout,coord);

  • 控制台光标的隐藏

    CONSOLE_CURSOR_INFO CursorInfo; GetConsoleCursorInfo(hout,&CursorInfo);//获取控制台光标信息
    CursorInfo.bVisible = 0; //隐藏控制台光标
    SetConsoleCursorInfo(hout, &CursorInfo);//设置控制台光标状态

  • 关于getchar(),getch()

    getchar():从键盘读取一个字符并输出,该函数的返回值是输入第一个字符的ASCII码;若用户输入的是一连串字符,函数直到用户输入回车时结束,输入的字符连同回车一起存入键盘缓冲区。若程序中有后继的getchar();函数,则直接从缓冲区逐个读取已输入的字符并输出,直到缓冲区为空时才重新读取用户的键盘输入。

    getch():接受一个任意键的输入,不用按回车就返回。该函数的返回值是所输入字符的ASCII码,且该函数的输入不会自动显示在屏幕上,需要putchar();函数输出显示。getch();函数常用于中途暂停程序方便调试和查看。

    getChar()包含在头文件

HANDLE hout;int main() {    hout = GetStdHandle(STD_OUTPUT_HANDLE);    COORD coord;    coord.X = 10;    coord.Y = 10;    SetConsoleCursorPosition(hout, coord);    printf("Set cursor!");    getch();}  

光标设置