mt-procode

总访问量8119次
  • 主页
  • 归档
所有文章 关于我

mt-procode

  • 主页
  • 归档

控制台标题、大小、前景色和背景色的两种改变方式

2020-04-22
总阅读量45次

system函数

注:要想使用system函数必须包括 <windows.h>的头文件


  • 设置控制台标题

1
2
//设置新的标题为test
system("tilte test")
  • 设置控制台窗口大小
1
2
//设置控制台窗口大小为宽30,高20
system("mode con cols=30 lines=20");
  • 设置控制台前景色和背景色
1
2
3
4
5
6
7
8
9
10
//color后面的参数第一个数字为背景色号第二个数字为文字色号
system("color 8E");
//附各颜色的代码对照表
/*
0=黑色 1=蓝色 2=绿色 3=湖蓝色
4=红色 5=紫色 6=黄色 7=白色
8=灰色 9=淡蓝色
A=淡绿色 B=淡浅绿色 C=淡红色 D=淡紫色
E=淡黄色 F=亮白色
*/

API函数

注:要想使用API函数也必须包括 <windows.h>的头文件

  • 设置控制台标题
1
2
//设置新的标题为test
SetConsoleTitle("test");
  • 设置控制台窗口大小
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
	//取得输出句柄
HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
//为COORD结构体赋值,作为缓冲区大小的参数
COORD size_x;
size_x.X = 51;//宽
size_x.Y = 21;//高
//设置缓冲区大小为宽51高21
SetConsoleScreenBufferSize(hOut,size_x);
//为SMALL_RECT结构体赋值,作为显示的窗口大小的参数
SMALL_RECT rc;
//确定左上角顶点位置再确定宽和高就可以在平面中确定唯一矩形
//规定开始显示的窗口左上角顶点距离设置好的缓冲区矩形框距离左侧为5
rc.Left = 0;
//规定开始显示的窗口左上角顶点距离设置好的缓冲区矩形框距离上侧为5
rc.Top = 0;
//规定开始显示的窗口宽为40
rc.Right = 40;
//规定开始显示的窗口高为20
rc.Bottom = 20;
SetConsoleWindowInfo(hOut, TRUE, &rc);//设置窗口大小
//注意:这里的显示窗口不可以等于或大于缓冲区的大小
  • 设置控制台前景色和背景色
1
2
3
4
5
6
7
8
9
10
11
//取标准输入输出句柄
HANDLE handle=GetStdHandle(STD_OUTPUT_HANDLE);
//设置文字颜色为绿色
//FOREGROUND_INTENSITY表示将设置的颜色高亮显示
SetConsoleTextAttribute(handle,FOREGROUND_INTENSITY | FOREGROUND_GREEN);
//设置背景色为蓝色
SetConsoleTextAttribute(handle,BACKGROUND_INTENSITY | BACKGROUND_BLUE);
//也可以同时设置背景色与前景色
SetConsoleTextAttribute(handle,0xF);
//附该函数的详细使用说明
//https://baike.baidu.com/item/SetConsoleTextAttribute/570121?fr=aladdin

使用特点:
system函数使用语法简单,但是在改变背景色上以最后修改的颜色为准,故无法达到多种颜色兼容存在,但是API函数可以很好的做到这一点。在改变窗口大小的问题上 system 修改后的窗口只是固定的大小,而API函数修改后的窗口有滚动条可以滑动查看不再窗口范围内的内容。

综上:
在修改控制台标题是=时两种方式都推荐
在修改控制台窗口大小上视情况而定
在修改背景和前景色时
若想使用多种颜色方案,使用API函数
使用单一的配色方案,使用system函数比较方便

赏

感谢支持

支付宝
微信
  • cmd
  • cmd

扫一扫,分享到微信

微信分享二维码
便利店小程序
main函数参数的简单使用
  1. 1. system函数
  2. 2. API函数
© 2020 mt-procode
Hexo Theme Yilia by Litten
  • 所有文章
  • 关于我

tag:

  • C++
  • 算法
  • 语法
  • 编辑器
  • cmd
  • 类
  • 数据结构
  • C

    缺失模块。
    1、请确保node版本大于6.2
    2、在博客根目录(注意不是yilia根目录)执行以下命令:
    npm i hexo-generator-json-content --save

    3、在根目录_config.yml里添加配置:

      jsonContent:
        meta: false
        pages: false
        posts:
          title: true
          date: true
          path: true
          text: false
          raw: false
          content: false
          slug: false
          updated: false
          comments: false
          link: false
          permalink: false
          excerpt: false
          categories: false
          tags: true
    

  • C语言求解一个矩阵的转置矩阵

    2020-06-15

    #算法#C

  • 建立工资系统-v3

    2020-06-10

    #C++#类

  • PhoneBook

    2020-06-10

    #C++#类

  • IntStack

    2020-06-10

    #C++#类

  • C实现矩阵乘法计算

    2020-06-04

    #算法#C

  • n阶行列式计算

    2020-06-04

    #算法#C

  • 建立工资计算系统(2)

    2020-06-01

    #C++#类

  • IntQueue类的实现

    2020-05-23

    #C++#数据结构

  • 建立工资系统(1)-员工与工资

    2020-05-19

    #C++#算法#类

  • ObjectCounter类的实现

    2020-05-17

    #C++#算法

  • 便利店小程序Plus

    2020-05-10

    #C++#算法

  • Fan类与Rational类的简单实现

    2020-05-08

    #C++#算法

  • 商贩卖pig和电话号码组合两类简单问题的求解

    2020-04-28

    #C++#算法

  • 十进制向二进制转化的两种方法

    2020-04-22

    #C++#算法

  • 两个有序数组的合并问题

    2020-04-22

    #C++#算法

  • 全局变量和局部变量

    2020-04-22

    #语法

  • 便利店小程序

    2020-04-22

    #C++#算法

  • 控制台标题、大小、前景色和背景色的两种改变方式

    2020-04-22

    #cmd

  • main函数参数的简单使用

    2020-04-22

    #C++#语法

  • 人民币值转换问题

    2020-04-14

    #C++#算法

  • Cpp 数组和结构体

    2020-04-03

    #C++#算法

  • 学生成绩管理小程序

    2020-03-31

    #C++#算法

  • Cpp 指针和引用的区别

    2020-03-31

    #C++#语法

  • 约瑟夫环问题

    2020-03-31

    #C++#算法

  • 如何找出int数组中只出现一次的两个元素(其它所有元素都出现了两次)?

    2020-03-31

    #C++#算法

  • 蒙特卡洛算法应用 --- 估算圆周率

    2020-03-31

    #C++#算法

  • MarkDown的简单使用及介绍

    2020-03-31

    #编辑器

学生党一枚~