C++输出彩色方块

1.使用方法

SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0xab);

————————————————————————————————————————
0 = 黑色    1 = 蓝色    2 = 绿色    3 = 湖蓝色
4 = 红色    5 = 紫色    6 = 黄色    7 = 白色    8 = 灰色    9 = 亮蓝色
A=亮绿色    B=亮湖蓝色    C=亮红色    D=亮紫色    E=亮黄色    F=亮白色

在代码中a代表背景色,b代表文字色,需替换。

2.举个例子

SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x01);

————————————————————————————————————————

这里是示例文字

SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0xF5);

————————————————————————————————————————

这里是示例文字

3.玩到极致

直接上代码(有点像我的世界):

#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
/*
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0xmm);1beijing
0 = 黑色	1 = 蓝色	2 = 绿色	3 = 湖蓝色
4 = 红色	5 = 紫色	6 = 黄色	7 = 白色	8 = 灰色	9 = 亮蓝色
A=亮绿色	B=亮湖蓝色	C=亮红色	D=亮紫色	E=亮黄色	F=亮白色
*/
void dirt(int x)
{
if(x==1){
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x20);
	cout<<"          ";
}
if(x>=2&&x<=5){
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x60);
	cout<<"          ";
}
}
void stone(int x)
{
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x80);
	cout<<"          ";
}
void leaf(int x)
{
	if(x==1){
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x20);
		cout<<".     .  .";
	}
	if(x==2){
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x20);
		cout<<"  .       ";
	}
	if(x==3){
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x20);
		cout<<"      .   ";
	}
	if(x==4){
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x20);
		cout<<"          ";
	}
	if(x==5){
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x20);
		cout<<" . .      ";
	}
}
void coal(int x)
{
	if(x==1){
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x80);
		cout<<"#     ### ";
	}
	if(x==2){
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x80);
		cout<<" ##     # ";
	}
	if(x==3){
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x80);
		cout<<" #   ##   ";
	}
	if(x==4){
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x80);
		cout<<"       ###";
	}
	if(x==5){
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x80);
		cout<<" ##       ";
	}
	
}
void test()
{
	for(int i=1;i<=5;i++)
	{
		dirt(i);
		stone(i);
		leaf(i);
		coal(i);
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x00);
		cout<<endl;
	}
}
int main(){
	test();
	return 0;
}

运行效果:

再见!记得三连哦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值