WEB开发网
开发学院软件开发VC 颜色支持,控制台应用 阅读

颜色支持,控制台应用

 2006-07-20 11:38:36 来源:WEB开发网   
核心提示:本文示例源代码或素材下载 颜色支持 控制台应用 保存用户设置我读了你在 2001年7月 的专栏文章“怎样创建256色工具条”(编者注:中文译文参见在线杂志第11期),然而我听说,颜色支持,控制台应用,除非你的IE浏览器为3.0或以后的版本,否则,它就会作为一个普通的基于 Windows

本文示例源代码或素材下载

  1. 颜色支持 
  2. 控制台应用
  3. 保存用户设置

我读了你在 2001年7月 的专栏文章“怎样创建256色工具条”(编者注:中文译文参见在线杂志第11期)。然而我听说,除非你的IE浏览器为3.0或以后的版本,否则,Windows95 不支持256色工具条,在这种情况下,应用程序将使用一个默认的16位色工具条。我怎样能够判断一个256位色或更高颜色位的工具条是否被支持?

Bayland Park

我喜欢这样——现在是2004年了,我仍能得到关于 Windows95 的问题。有一种简单的方法可以知道当前屏幕或窗口支持多少位颜色, 只要获取窗口或屏幕设备上下文的句柄(HDC),然后调用 GetDeviceCaps (得到设备性能),就可以得到颜色位面(PLANS)和每个象素所含的比特位(BITSPIXEL),两者相乘就可以得到在某个象素中总的比特位数。 CWindowDC dc(NULL);
int nPlanes = dc.GetDeviceCaps(PLANES);
int nBitsPixel = dc.GetDeviceCaps(BITSPIXEL);
int totalBits = nPlanes * nBitsPixel;   

通常,对于一个256色系统或者16位、24位或32位的真彩系统来说,其颜色位面是1,每个象素的比特位数是8。GetDeviceCaps 能够得到许多有用的信息,像逻辑英寸象素的个数、屏幕高宽比率、光栅性能和其它一些信息。我写过一个小程序ColorBits (如 Figure 1 所示)。你 可从本文开始处的链接下载这个程序的源代码。

Figure 1 ColorBits

我见到过一些即可以作为控制台应用程序运行,也可以作为基于Windows的应用程序运行的程序。即:如果你在命令提示符键入程序的名字,它就会作为一个普通的基于 Windows 的应用程序运行;如果你输入一个命令行选项,如:“-batch”,它就会以批处理模式作为一个控制台应用程序运行,同时所有输出被定向到控制台。请问这个功能是怎么做的?

1 2 3 4 5 6  下一页

Tags:颜色 支持 控制台

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接