📄 第七课 库 和 microsoft foundation classes (mfc).htm
字号:
face="Arial, Helvetica, sans-serif" size=2>CodeWarrior </FONT><FONT
size=2>光盘中找到,但不一定是最新的版本。你可以查看 </FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>Metrowerks </FONT><FONT
size=2>的帮助页面来获得相关信息,因为微软公司会为 </FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>CodeWarrior </FONT><FONT
size=2>的发行版本提供一些升级补丁。</FONT></P>
<P><FONT face="Arial, Helvetica, sans-serif"
size=2> </FONT><FONT size=2>对于特定平台,比如</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>Macintosh </FONT><FONT
size=2>的开发者可以使用 </FONT><FONT face="Arial, Helvetica, sans-serif"
size=2>Metrowerks </FONT><FONT size=2>自己的 </FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>PowerPlant </FONT><FONT
size=2>类库。</FONT><FONT face="Arial, Helvetica, sans-serif"
size=2>PowerPlant </FONT><FONT size=2>是为编写 </FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>Mac </FONT><FONT
size=2>应用程序而设计的面向对象的应用程序框架。我们在本课程中并不打算讨论 </FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>PowerPlant</FONT><FONT
size=2>,但你应知道,它与 </FONT><FONT face="Arial, Helvetica, sans-serif"
size=2>MFC </FONT><FONT size=2>在许多方面是类似的。你在这里学到的知识也将帮助你理解
</FONT><FONT face="Arial, Helvetica, sans-serif"
size=2>PowerPlant</FONT><FONT size=2>。我们讨论 </FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>MFC </FONT><FONT
size=2>时,其中的许多概念也可以应用到 </FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>PowerPlant </FONT><FONT
size=2>上。</FONT></P>
<BLOCKQUOTE><B>
<P><FONT size=2>注意</FONT><FONT face="Arial, Helvetica, sans-serif"
size=2>:</B> </FONT><FONT size=2>在 </FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>Macintosh </FONT><FONT
size=2>版的 </FONT><FONT face="Arial, Helvetica, sans-serif"
size=2>CodeWarrior </FONT><FONT size=2>光盘中也有一个 </FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>MFC </FONT><FONT
size=2>的库文件,但不像 </FONT><FONT face="Arial, Helvetica, sans-serif"
size=2>Windows </FONT><FONT size=2>版的光盘,这里不包含源代码。使用 </FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>MFC</FONT><FONT
size=2>,你可以编写跨平台的代码,还可以同时为 </FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>Macintosh(</FONT><FONT
size=2>使用 </FONT><FONT face="Arial, Helvetica, sans-serif"
size=2>PowerPlant) </FONT><FONT size=2>和 </FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>PC(</FONT><FONT
size=2>使用 </FONT><FONT face="Arial, Helvetica, sans-serif"
size=2>MFC) </FONT><FONT
size=2>编译这个代码。是不是很酷?</FONT></P></BLOCKQUOTE>
<P><FONT face=幼圆 size=+1><B>应用程序框架</B></FONT></P>
<P><FONT face="Arial, Helvetica, sans-serif"
size=2> </FONT><FONT
size=2>就像前面提到过的一样,</FONT><FONT face="Arial, Helvetica, sans-serif"
size=2>MFC </FONT><FONT size=2>是一个应用程序框架。也就是说,</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>MFC </FONT><FONT
size=2>是一个源代码或库格式的</FONT><FONT face="Arial, Helvetica, sans-serif"
size=2> C++ </FONT><FONT
size=2>类集。使用这个框架可以在较短时间内创建一个支持高级操作系统功能的完整的应用程序。此外,</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>MFC </FONT><FONT
size=2>还包含了用以构造你的用户界面的工具。这些工具,特别是图象编辑器、对话框编辑器和资源编译器,能够帮助你构造用户界面中的图形元素</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>(</FONT><FONT
size=2>在本课最后一节中将解释如何安装这些有用的组件</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>)</FONT><FONT
size=2>。一个应用程序框架只涉及到应用程序的标准用户界面,而与该应用程序的特有的内容无关。换句话说,这个框架能够帮助你构造一个功能强大的用户界面,把你的时间节省下来以便让你有更多时间去编写实现应用程序目的的其它函数。因此你不必担心会花很多时间来创建一个和其它一些运行在操作系统环境中具有同样
</FONT><FONT face="Arial, Helvetica, sans-serif" size=2>Windows
</FONT><FONT size=2>化界面的应用程序,因为你只需去运用那些库就可以达到这些目的了。</FONT></P><FONT
face="Arial, Helvetica, sans-serif" size=2>
<DIV align=center>
<CENTER>
<TABLE cellSpacing=0 cellPadding=0 border=0>
<TBODY>
<TR>
<TD><IMG height=447
alt="Figure 7-1 MFC's user interface builder."
src="第七课 库 和 Microsoft Foundation Classes (MFC).files/icwL7_Fig1.jpg"
width=585 align=left> </TD></TR></FONT>
<TR>
<TD align=middle>
<P align=center><I><FONT size=1>图</FONT><FONT
face="Arial, Helvetica, sans-serif" size=1> 7-1 MFC
</FONT><FONT size=1>的用户界面构造器</FONT></I></P></TD></TR><FONT
face="Arial, Helvetica, sans-serif"
size=2></TBODY></TABLE></CENTER></DIV></FONT>
<P><FONT face="Arial, Helvetica, sans-serif"
size=2> </FONT><FONT
size=2>应用程序框架还能处理分发消息</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>(</FONT><FONT
size=2>例如用户击键的动作、鼠标点击、绘画消息等等</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>)</FONT><FONT
size=2>到应用程序中的许多按钮、列表、窗口和控件上。这个功能帮助你能够集中注意力到实现应用程序的功能而不是界面上,把那些创建界面的工作留给应用程序框架吧。</FONT></P>
<P><FONT face="Arial, Helvetica, sans-serif"
size=2> </FONT><FONT
size=2>应用程序框架提供了许多超过老式风格的</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> roll-your-own
</FONT><FONT size=2>方法。首先,这些代码是成熟和经过严格测试的。每天都有成百上千的开发者使用</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> MFC </FONT><FONT
size=2>来开发应用程序。每当</FONT><FONT face="Arial, Helvetica, sans-serif"
size=2> Windows </FONT><FONT size=2>操作系统增加了一些新的功能的时候,</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>MFC </FONT><FONT
size=2>也会不断地被升级,你可以通过使用新版本的</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> MFC </FONT><FONT
size=2>来编译你的应用程序,以便获得所有新的功能特色,而且几乎不用对应用程序的源代码做任何修改。</FONT></P>
<P><FONT face="Arial, Helvetica, sans-serif"
size=2> </FONT><FONT size=2>应用程序框架还提供可重用的代码。代码重用是象
</FONT><FONT face="Arial, Helvetica, sans-serif" size=2>C++
</FONT><FONT
size=2>这样的面向对象的编程方法得以发展的主要原因之一。通过将可重用的代码封装为类,你可以很容易地使用已经存在的类来添加需要的功能。代码重用使得你可以使用经过严格测试的代码来构造你的应用程序,并很容易获得预期的功能。而且你还可以很容易地将你编写的类与其它需要同样功能的人进行共享。</FONT></P>
<P align=left><FONT face="Arial, Helvetica, sans-serif"
size=2> </FONT><FONT
size=2>与你自己创建所需框架而言,使用应用程序框架有时会使得你的程序稍大一些。因为现代计算机通常都配置了足够数量的内存,而且这个框架可以作为一个</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> DLL </FONT><FONT
size=2>来使用,所以增加这么一些程序体积还是很值得的。</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>PowerPlant </FONT><FONT
size=2>和</FONT><FONT face="Arial, Helvetica, sans-serif" size=2> MFC
</FONT><FONT size=2>是两个很值得你去熟练使用的高效的工具。</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>
</FONT></P>
<P><B><FONT size=+1>如何安装和使用</FONT><FONT
face="Arial, Helvetica, sans-serif" size=+1> MFC </FONT><FONT
size=+1>接口工具</FONT></B></P>
<P><FONT face="Arial, Helvetica, sans-serif"
size=2> MFC </FONT><FONT size=2>接口工具</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>(</FONT><FONT
size=2>包括对话编辑器和图象编辑器</FONT><FONT face="Arial, Helvetica, sans-serif"
size=2>)</FONT><FONT size=2>可以在</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> CodeWarrior </FONT><FONT
size=2>安装光盘上找到。但是,它们并不是作为</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> CodeWarrior </FONT><FONT
size=2>安装程序的一部分存在的,因此在完成了</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> CodeWarrior </FONT><FONT
size=2>的安装后,在硬盘上你还是找不到</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> MFC</FONT><FONT
size=2>。为了安装这些工具,请按照以下步骤进行:</FONT>
<UL>
<LI><FONT size=2>找到</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> iTOOLS.Exe
</FONT><FONT size=2>文件。这是安装</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> MFC </FONT><FONT
size=2>接口工具必须的安装程序。</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>iTools.Exe </FONT><FONT
size=2>文件可以在</FONT><FONT face="Arial, Helvetica, sans-serif"
size=2> C:\Program Files\Metrowerks\CodeWarrior\BinSDK\bin\
</FONT><FONT size=2>目录下找到。如果在那儿找不到这个文件,那么就到</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> CodeWarrior
</FONT><FONT size=2>的安装光盘上去找。该文件应该在</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>
Extras\SKDs\Win32\Microsoft Win32 SDK Tools\</FONT><FONT
size=2>目录下。</FONT><FONT face="Arial, Helvetica, sans-serif"
size=2> </LI></UL></FONT>
<BLOCKQUOTE><B>
<P><FONT size=2>注意</FONT><FONT face="Arial, Helvetica, sans-serif"
size=2>:</B> </FONT><FONT size=2>该安装文件</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> (iTOOLS.Exe)
</FONT><FONT size=2>将会询问你想在哪里保存</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> MFC </FONT><FONT
size=2>接口工具。但不行的是,它却没有提供定位目录用的浏览</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>(browser)</FONT><FONT
size=2>按钮可用,因此你必须手工的输入一个路径。如果你并不能确定你输入的路径是否就是你想要保存这些工具的路径,你可以先在那个目录中找到一个文件,然后通过查看该文件的属性</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>(</FONT><FONT
size=2>在该文件上点击右键然后选择</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> Properties
</FONT><FONT size=2>项</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2>)</FONT><FONT
size=2>,从这个属性框上你可以复制到完整的路径,并把它填入到安装过程中提示要输入安装路径的编辑框中。</FONT></P></BLOCKQUOTE>
<UL>
<LI><FONT size=2>这些工具将要被安装到目的安装路径的</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> \bin\ </FONT><FONT
size=2>目录中。在这个路径中你将可以找到对话框编辑器</FONT><FONT
face="Arial, Helvetica, sans-serif"
size=2>(DlgEdit.Exe)</FONT><FONT size=2>,图象编辑器</FONT><FONT
face="Arial, Helvetica, sans-serif"
size=2>(ImagEdit.Exe)</FONT><FONT size=2>和其它一些有用的工具;</FONT>
<LI><FONT size=2>如果你正在开发</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> Windows 95
</FONT><FONT size=2>或</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> Windows NT</FONT><FONT
size=2>,需要的工具可以在</FONT><FONT face="Arial, Helvetica, sans-serif"
size=2> \bin\win95 </FONT><FONT size=2>和</FONT><FONT
face="Arial, Helvetica, sans-serif" size=2> \bin\winnt
</FONT><FONT size=2>目录中找到。</FONT> </LI></UL>
<HR>
<P>附原文:</P>
<P> </P>
<P><FONT face="Arial, Helvetica, sans-serif" color=#000000
size=3><B><B>Libraries</B></B><BR></FONT><BR></P><FONT
face="Arial, Helvetica, sans-serif" size=2>
<P>What's a library? This is a question you need to know the answer
to! A library is a file that contains compiled code that your
programs can call upon when needed. Typical functions that libraries
can offer are file and screen I/O, memory management services, 3-D
graphics display, and scientific computations. Libraries can save
you time in the development process and help simplify your software
applications. Chances are that you will use libraries quite often in
developing programs. There are several ways to use library code in
your programs:
<UL>
<LI>Write it yourself in a source code file, and optionally
compile it as a library or DLL.
<LI>Use a library provided by someone else.
<LI>Use a shared library (a DLL) provided by someone else.
</LI></UL>
<P><B><FONT size=+1>Writing Your Own Library or DLL</FONT></B></P>
<P>The first method is simple. When you include code within a C or
C++ source file, you complete the program by simply compiling,
linking, and executing it. This is the way we've been working thus
far during this course. See, you were using them and you didn't even
know it. You're good.</P>
<P><B><FONT size=+1>Using Someone Else's Library</FONT></B></P>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -