C语言-->为你的窗体改变字体颜色 | 一种动画效果 | 增加bgm
C语言-->为你的窗体改变字体颜色 | 一种动画效果 | 增加bgm
本篇博客下代码均在code blocks完成。
一、改变窗体背景和字体颜色
每次运行代码看到黑漆漆的窗体是不是感觉有点单调?其实窗体的背景和字体都是可修改的。
窗体默认背景色及字体色设置system("color XX");
- 在这里我们把窗体默认的黑底白字修改成了白底黑字,用的就是这行简单的代码
system("color F0");
,其中F
表示背景色为黑色,0
表示字体色为白色。 - 除了F0我们还可以搭配更多种设置:
0=黑色
1=蓝色
2=绿色
3=湖蓝色
4=红色
5=紫色
6=黄色
7=白色
8=灰色
9=淡蓝色
A=淡绿色
B=淡浅绿色
C=淡红色
D=淡紫色
E=淡黄色
F=亮白色
改变输出或者输入字体和背景的颜色
- 调用
SetConsoleTextAttribute函数
实现 - 此设置维持到下一次改变或者程序结束
- 格式范例:(黑底白字)
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY | FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);
- 这里逗号前部分是固定的语法,之后是对背景、前景颜色的设置。
- 可以设为
FOREGROUND_红/绿/蓝
或者BACKGROUND_红/绿/蓝
,还可以设置增强效果FOREGROUND_INTENSITY
和BACKGROUND_INTENSITY
- 逗号后半部分内容均用
|
符号隔开 - 更多颜色搭配参考控制台输出字体颜色
- 示例代码
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
void main()
{
system("mode con:cols=100 lines=20000");
system("color F9");
printf("hello!!\n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_INTENSITY);
printf("12");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE | FOREGROUND_BLUE | BACKGROUND_INTENSITY |FOREGROUND_INTENSITY);
printf("345");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE | BACKGROUND_INTENSITY);
printf("54321");
printf("\n");
}
- 效果如下
二、制作一种动画效果
- 效果:字逐个打出的动画
#include "stdio.h"
#include <windows.h>
#include <stdlib.h>
void main()
{
int i;
char s[80]="我是一串会跳出的字符串!";
for(i=0;i<80&&s[i]!='\0';)
{
if(s[i]<0)
{
printf("%c%c",s[i],s[i+1]); //汉字
i=i+2;
}
else
{
printf("%c",s[i]); //普通字符
i=i+1;
}
Sleep(500);
}
printf("\n");
system("pause");
}
- 代码中一个汉字占两个字符,所以我们需要巧妙地将他识别并输出
三、增加bgm
- 首先要保证你打开的代码是一个完整的工程,不会的同学开.cbp文件就对了。
- 写一个最简单的代码
#include<stdio.h>
#include<stdlib.h>
#include <windows.h>
#include <mmsystem.h>//导入声音头文件
#pragma comment(lib,"winmm.lib")//导入声音头文件库
int main()
{
mciSendString("open 1.mp3",NULL,0,NULL);//.MP3文件要放在和代码的同一路径下
mciSendString("play 1.mp3",NULL,0,NULL);
while(1);
return(0);
}
接下来我们还需要在code blocks里加入winmm.lib库文件
-
选中
project-->build options
-
点击
Linker settings
,在Link libraries
处点击add,输入vinmm
点击确定即可。
-
运行程序,就可以听到好听的bgm啦~