1.界面整体刷新
应用:界面间相互切换的时候
例如:登录界面场景,切换为主操作界面场景(根据不同角色,提供不同操作界面)
#include<windows.h> #include<stdio.h> void main(){ /* * 渲染界面一 */ printf("hello world!!"); Sleep(1000); /* * 清空界面,并渲染界面界面二 */ system("cls"); printf("good bye !!"); system("pause"); }
2.界面局部刷新
应用:界面上数据更新
例如:扑克牌框框是一样的,里面的数字不同。只刷新数字,或者图案等,进行替换。
原理:利用win自带的光标跳转至想修改的位置(x,y坐标系),输入新字符,已达到替换的目的。
备注:输入退格符,可实现删除字符功能
#include<windows.h> #include<stdio.h> void showPartRefreshView(){ /* * 渲染界面一 */ printf("hello world!!"); Sleep(1000); //将光标移动至需要修改的地方 int x = 5; //第六列 int y = 0; //第一行 COORD pos = {x,y}; HANDLE win_dle = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleCursorPosition(win_dle,pos); //将hello和world中间空格替换为逗号 printf(","); //将光标移动至末尾 x = 12; //列 y = 0; //行 COORD pos_end = {x,y}; win_dle = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleCursorPosition(win_dle,pos_end); }