图示、游标、功能表和对话方块都是相互关联的,它们是Windows的全部资源型态。资源即资料,它们被储存在程式的.EXE档案中,但是它们并非驻留在程式的资料区域中。也就是说,资源不能从程式原始码中定义的变数直接存取,Windows提供函式直接或间接地把它们载入记忆体以备使用。我们已经遇到了两个这样的函式,即LoadIcon和LoadCursor,它们出现在范例程式,定义视窗类别结构的内容设定叙述中。它们从Windows中载入二进位图示和游标映象,并传回该图示或游标的代号。在本章中,我们先建立自己的图示,它会从程式自己的.EXE档案中载入。
在本书中,我们将讨论这些资源:
前六个资源在本章讨论,对话方块在第十一章讨论,而点阵图在第十四章讨论。
图示、游标、字串和自订资源
使用资源的好处之一,在於程式的许多元件能够连结编译进程式的.EXE档案中。如果没有资源这一个概念,如图示图像之类的二进位档案可能会存放在单独的档案中,.EXE会把它读入记忆体中使用。或者图示不得不在程式中以位元组阵列的形式定义(这样就无法看到实际的图示图像了)。作为资源,图示储存在开发者电脑上可单独编辑的档案中,但在编译程序中被连结编译进.EXE档案中。
将图示添加到程式
将资源添加到程式中需要Visual C++(www.cppentry.com) Developer Studio的一些附加功能。对於图示来说,可以使用「Image Editor」(也称为「Graphics Editor」)来绘制图示的图像。该图像被储存在副档名为.ICO的图示档案中。Developer Studio还产生一个资源描述档(副档名为.RC的档案,有时也称作资源定义档案),它列出了程式的所有资源和