我是靠谱客的博主 羞涩鸡翅,这篇文章主要介绍C++控制台窗口文字高亮显示前言正文,现在分享给大家,希望可以做个参考。

前言

 由于亿些事情,最近一个月实在没有时间更新,今天终于是挤出来时间更一期了。

正文

定义变量+导入库文件:

复制代码
1
2
3
4
5
6
7
8
#include <iostream> #include <conio.h> #include<windows.h> #include <stdlib.h> using namespace std; int choice;//保存虚拟按键值,可以上网搜,也可以自己做程序,个人感觉自己做程序更方便 //本章节使用的按键值:W(向上):119 S(向下):115 Enter:13 int a=1;//定义选择的位置

步骤1:如何进行高亮显示?

这是这篇文章中最主要的一个问题,现在找到了解决方法,如下:

显示方式:

0(默认值)

1(高亮显示,顺便加粗?不确定)

2(暗淡)

22(非粗体,不确定)

4(下划线)

5(闪烁,但是我没看出有什么效果。。)

25(非闪烁)

7(反显,我也没看出效果)

27(非反显)

8(隐藏)

字体颜色:

30(黑色)

31(红色)

32(绿色)

33(黄色)

34(蓝色)

35(品红)

36(青色)

37(白色)

背景色:

40(黑色)

41(红色)

42(绿色)

43(黄色)

44(蓝色)

45(品红)

46(青色)

47(白色)

格式:printf("33[显示方式;字体颜色;背景色m*             文字                      *33[0m");

例:printf("33[4;31;42m*             选择1                   *33[0m");

于是就有了以下代码:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
switch (a){ case 1: system("cls"); printf("33[1;30;47m*选择1*n33[0m"); printf("选择2n"); printf("Exitn"); break; case 2: system("cls"); printf("选择1n"); printf("33[1;30;47m*选择2*n33[0m"); printf("Exitn"); break; case 3: system("cls"); printf("选择1n"); printf("选择2n"); printf("33[1;30;47m*Exit*n33[0m"); break;

 步骤2:如何让机器识别我们的选择?

我们使用 _getch()来识别我们的按键,它返回的是一个虚拟按键值,代码如下:

复制代码
1
choice = _getch();

步骤3:让机器对我们的选择做出判断!

使用switch case语句,判断返回的按键值是否等于w、s、Enter

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
switch (choice){ case 119://按下w键,向上移动 if(a<=1){//做限位 a=1; } if(a>1){ a--; } break; case 115://按下s键,向下移动 if(a>=3){//做限位 a=3; } if(a<3){ a++; } break; case 13://按下回车键确认执行,做出以下判断 switch (a){ case 1://选择1 system("cls"); printf("选择了1n"); system("pause"); break; case 2://选择2 system("cls"); printf("选择了2n"); system("pause"); break; case 3://退出程序 exit(0); } }

记住,一定要做好限位,否则如果a<1或a>3会出现bug

代码只是一个示例,对于显示的文字和代码可以自行更改

完整代码:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#include <iostream> #include <conio.h> #include<windows.h> #include <stdlib.h> using namespace std; int choice; int a=1; int main() { while (1) { switch (a){ case 1: system("cls"); printf("33[1;30;47m*选择1*n33[0m"); printf("选择2n"); printf("Exitn"); break; case 2: system("cls"); printf("选择1n"); printf("33[1;30;47m*选择2*n33[0m"); printf("Exitn"); break; case 3: system("cls"); printf("选择1n"); printf("选择2n"); printf("33[1;30;47m*Exit*n33[0m"); break; } choice = _getch(); switch (choice){ case 119: if(a<=1){ a=1; } if(a>1){ a--; } break; case 115: if(a>=3){ a=3; } if(a<3){ a++; } break; case 13: switch (a){ case 1: system("cls"); printf("选择了1n"); system("pause"); break; case 2: system("cls"); printf("选择了2n"); system("pause"); break; case 3: exit(0); } //cout<<choice<<"n";//W:119 S:115 Enter:13 } } return 0; }

演示视频:

C++控制台高亮选择测试——使用Clipchamp制作

最后

以上就是羞涩鸡翅最近收集整理的关于C++控制台窗口文字高亮显示前言正文的全部内容,更多相关C++控制台窗口文字高亮显示前言正文内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(78)

评论列表共有 0 条评论

立即
投稿
返回
顶部