怎样使C++编写的程序,在运行时,背景和字改变颜色?
展开全部
system(color )
color后面加参数,具体参数win+r 输入cmd 然后输入color/?
COLOR [attr]
attr 指定控制台输出的颜色属性
颜色属性由两个十六进制数字指定 -- 第一个为背景,第二个则为
前景。每个数字可以为以下任何值之一:
0 = 黑色 8 = 灰色
1 = 蓝色 9 = 淡蓝色
2 = 绿色 A = 淡绿色
3 = 浅绿色 B = 淡浅绿色
4 = 红色 C = 淡红色
5 = 紫色 D = 淡紫色
6 = 黄色 E = 淡黄色
7 = 白色 F = 亮白色
color后面加参数,具体参数win+r 输入cmd 然后输入color/?
COLOR [attr]
attr 指定控制台输出的颜色属性
颜色属性由两个十六进制数字指定 -- 第一个为背景,第二个则为
前景。每个数字可以为以下任何值之一:
0 = 黑色 8 = 灰色
1 = 蓝色 9 = 淡蓝色
2 = 绿色 A = 淡绿色
3 = 浅绿色 B = 淡浅绿色
4 = 红色 C = 淡红色
5 = 紫色 D = 淡紫色
6 = 黄色 E = 淡黄色
7 = 白色 F = 亮白色
展开全部
Lsin30说的没错 比如 system(“color 3B”); 注意要加引号 还有一种方法
包含windows.h头文件
HANDLE hConsole; // 这个你要看不懂就把它理解成相当于是一个int定义的变量吧
int k;
hConsole = GetStdHandle(STD_OUTPUT_HANDLE); /*获取控制台得句柄(里边的参数不用管,仅仅是一个结构体而已,它包含着控制它的具体信息*/
for(k = 1; k < 255; k++)
{
SetConsoleTextAttribute(hConsole, k); //设置文字及背景色
cout << k << " I want to be nice today!" << endl;
}
包含windows.h头文件
HANDLE hConsole; // 这个你要看不懂就把它理解成相当于是一个int定义的变量吧
int k;
hConsole = GetStdHandle(STD_OUTPUT_HANDLE); /*获取控制台得句柄(里边的参数不用管,仅仅是一个结构体而已,它包含着控制它的具体信息*/
for(k = 1; k < 255; k++)
{
SetConsoleTextAttribute(hConsole, k); //设置文字及背景色
cout << k << " I want to be nice today!" << endl;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先载入一张图片,ID为IDB_BITMAP2
TestDlg.h中
CBrush m_brBk;//在public中定义
TestDlg.cpp中
在初始化函数OnInitDialog()中加入:
BOOL CTestDlg::OnInitDialog()
{
CDialog::OnInitDialog();
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP2);
m_brBk.CreatePatternBrush(&bmp);
bmp.DeleteObject();
return TRUE; // return TRUE unless you set the focus to a control
}
在打开类向导,找到WM_CTLCOLOR消息,重载得对应函数OnCtlColor(),添加如下:
HBRUSH CTestDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if (pWnd == this)
{
return m_brBk;
}
return hbr;
}
TestDlg.h中
CBrush m_brBk;//在public中定义
TestDlg.cpp中
在初始化函数OnInitDialog()中加入:
BOOL CTestDlg::OnInitDialog()
{
CDialog::OnInitDialog();
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP2);
m_brBk.CreatePatternBrush(&bmp);
bmp.DeleteObject();
return TRUE; // return TRUE unless you set the focus to a control
}
在打开类向导,找到WM_CTLCOLOR消息,重载得对应函数OnCtlColor(),添加如下:
HBRUSH CTestDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if (pWnd == this)
{
return m_brBk;
}
return hbr;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个是GUI界面编程了,要看你使用的是什么开发包。
一般是找到相应的绘制类的实例,然后更改其画刷句柄。
一般是找到相应的绘制类的实例,然后更改其画刷句柄。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
补充:我有见过这样的程序可能我描述的也不够清楚,这个程序只能设置字符和背景的颜色而已,并不能改变这是不太可能的事情,显示的方式也不对,在DOS
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询