`
yuanjinxiu
  • 浏览: 658201 次
文章分类
社区版块
存档分类
最新评论

Windows API一日一练(23)SetTextColor函数

 
阅读更多
世界是多姿多彩的,色彩是不可以缺少的。在软件开发里,不同的字符颜色往往用来区分不同的数据类型,比如严重的警告,就是使用红色,当然这也是跟交通里红绿灯是一样的道理。最根本的原因,还是人类对自然的选择。毕竟人眼对不同的颜色作出了不同的选择。由于红色光波穿透性比较好,所以就形成以红色来警告的信号。说来也怪,人类的身体不管是什么颜色,流着的血一定是红色的。在软件开发里,要把输出字符的颜色符合现在人位的习惯,不要背离它,否则就不是“以人为本”的科学理念,如果开发出不是“以人为本”的软件是没有客户使用的。在Windows里,微软是选择以蓝色为基调的配色方案,深蓝色的XP界面比WIN2000界面,让人感觉到耳目一新的感觉,深深地把年轻人吸引住了。看到国内杀毒软件,很多是选择绿色为基调,其实就是绿色也就是代表了安全的选择。可见,在软件领域里颜色是非常重要的,面对不同的客户要选择不同的颜色。比如SAP软件,选择是黄色为基调,比较有特色。
函数SetTextColor声明如下:
WINGDIAPI COLORREF WINAPI SetTextColor(__in HDC hdc, __in COLORREF color);
hdc是当前设备的句柄。
color是设置当前设备字符输出颜色。
调用这个函数的例子如下:
#001//
#002//界面显示输出.
#003//
#004//蔡军生2007/08/13 QQ:9073204 深圳
#005//
#006void CCaiWinMsg::OnDraw(HDC hDC)
#007{
#008//
#009std::wstring strShow(_T("C++窗口类的实现,2007-08-13"));
#010TextOut(hDC,10,10,strShow.c_str(),(int)strShow.length());
#011
#012//设置输出字符串的颜色.
#013COLORREF crOld = SetTextColor(hDC,RGB(255,0,0));
#014TextOut(hDC,10,30,strShow.c_str(),(int)strShow.length());
#015
#016SetTextColor(hDC,RGB(0,255,0));
#017TextOut(hDC,10,50,strShow.c_str(),(int)strShow.length());
#018
#019SetTextColor(hDC,RGB(0,0,255));
#020TextOut(hDC,10,70,strShow.c_str(),(int)strShow.length());
#021
#022//
#023SetTextColor(hDC,crOld);
#024}
13行设置字符的颜色为红色。
16行设置字符的颜色为绿色。
19行设置字符的颜色为蓝色。
23行恢复原来的颜色,这个一定要记得做,否则后面显示会出错。

分享到:
评论

相关推荐

    Windows API函数大全

    CreateScalableFontResource 为一种TureType字体创建一个资源文件,以便能用API函数AddFontResource将其加入Windows系统 DrawText 将文本描绘到指定的矩形中 DrawTextEx 与DrawText相似,只是加入了更多的功能 ...

    API之网络函数---整理网络函数及功能

    CreateScalableFontResource 为一种TureType字体创建一个资源文件,以便能用API函数AddFontResource将其加入Windows系统 DrawText 将文本描绘到指定的矩形中 DrawTextEx 与DrawText相似,只是加入了更多的功能 ...

    Android中设置TextView的颜色setTextColor两种方法

    android中设置TextView的颜色有方法setTextColor,这个方法被重载了,可以传入两种参数。参考博客:http://blog.csdn.net/u010963246/article/details/47399859

    Win32编程常用函数

    Win32编程常用函数结构整理 WNDCLASSEX GetStockObject CreateWindow MessageBox CreatePen GetClientRect SelectObject DeleteObject MoveToEx LineTo SetPixel GetPixel CreateSolidBrush CreateHatchBrush ...

    枪声模拟器(easyx)

    图形界面:使用initgraph等函数初始化了一个640x480的图形窗口,并通过setbkcolor、settextcolor等函数设置了背景色和文本颜色。 用户交互:程序通过kbhit和getch函数检测用户的键盘输入,实现与用户的交互。 应用...

    Android编程设置TextView颜色setTextColor用法实例

    本文实例讲述了Android编程设置TextView颜色setTextColor用法。分享给大家供大家参考,具体如下: android中设置TextView的颜色有方法setTextColor,这个方法被重载了,可以传入两种参数。 public void ...

    VC之美化界面篇本文专题讨论VC中的界面美化,适用于具有中等VC水平的读者。读者最好具有以下VC基础:

    MFC的CDC类封装了Windows API 中大部分的画图函数。CDC的常见操作函数包括: Drawing-Attribute Functions:绘图属性操作,如:设置透明模式 Mapping Functions:映射操作 Coordinate Functions:坐标操作 ...

    易语言API创建表格

    API创建表格,十六到十,取低16位,取高16位,GridCreate,Grid程序,GetStockObject,LoadCursor,RegisterClassEx,CreateWindowEx,DefWindowProc,MoveWindow,ReleaseDC,GetWindowDC,SetBkColor,SetTextColor,SelectObject,...

    VC 渐变文字.rar

    VC 制作渐变的文字,VC 渐变文字,文字的色彩会越来越暗,也会越来越亮,最终形成渐变文字...还需要再优化完善,具体思路是先安装一个定时器,通过CDC 类的SetTextColor 函数在OnTimer()函数中改变字符串的颜色。。。。

    VC++如何改变文本颜色

    获取静态文本的句柄改变控件的颜色pDC->SetTextColor(color);

    C++MFC教程

    了解和MFC各个类功能相近的API函数。 3、一定要理解MFC中消息映射的作用。 4、训练自己在编写代码时不使用参考书而是使用Help Online。 5、记住一些常用的消息名称和参数的意义。 6、学会看别人的代码。 7、多看书,...

    PT80-NEAT开发指南v1.1

    23 窗口事件 ............................................................................................................................................... 24 窗口类概览 ................................

    易语言屏幕写字命令

    易语言屏幕写字命令源码,屏幕写字命令,刷新清除,屏幕写字,取桌面句柄,写屏,GetDC,ReleaseDC,GetWindowDC,SetTextCharacterExtra,SetTextColor,SetBkMode,FindWindowExA,InvalidateRect,SelectObject,...

    分析Android App中内置换肤功能的实现方式

    这个使用编程语言来动态设置是可以做到的,例如使用View的setBackgroundResource、setTextSize、setTextColor等函数。但我们不可能在每个activity里对页面里的所有控件都通过调用这些函数来换肤,这样的程序代码难以...

    可自定义的CListCtrlCL类

    可修改颜色的一个CListCtrlCl类 部分函数如下所示 public: 行高 int m nRowHeight; int InsertColumn int nCol LPCTSTR lpszColumnHeading int nFormat LVCFMT LEFT int nWidth 1 int nSubItem 1 ; public: ...

    C++ MFC实现飞机大战游戏

    在MFC的API函数中使用SetTimer()函数设置定时器,设置系统间隔时间,在OnTimer()函数中实现响应定时器的程序。 2.2 透明贴图实现技术  绘制透明位图的关键就是创建一个“掩码”位图(mask bitmap),这个“掩码”位图...

    Android代码-PinView

    Provides a widget for enter PIN/OTP/password etc on Android 4.1 (API 16). Dependency repositories { maven { jcenter() } } dependencies { compile 'com.chaos.view:pinview:1.4.2' } Usage PinView ...

    基于VB的文字动画特效

    DrawText lHDC, sText, lLen, tR, DT_CALCRECT '调用API函数DrawText tR.Right = tR.Right + 4 If (tR.Right > Me.ScaleWidth \ Screen.TwipsPerPixelX) Then tR.Right = Me.ScaleWidth \ Screen.TwipsPerPixelX ...

    VC++.net MFC 控件设置

    //用所需的背景色定义画刷 用建立类向导为对话框添加OnCtlColor函数: HBRUSH CListBkChangeDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { if(nCtlColor==CTLCOLOR_LISTBOX) //控件类型 可为CTLCOLOR_...

Global site tag (gtag.js) - Google Analytics