亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ch12.htm

?? Learning language of Visual C++6
?? HTM
?? 第 1 頁 / 共 3 頁
字號(hào):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>

<HEAD>
<SCRIPT LANGUAGE="JavaScript">

<!--

function popUp(pPage) {
 var fullURL = document.location;
 var textURL = fullURL.toString();
 var URLlen = textURL.length;
 var lenMinusPage = textURL.lastIndexOf("/");
 lenMinusPage += 1;
 var fullPath = textURL.substring(0,lenMinusPage);
 popUpWin = window.open('','popWin','resizable=yes,scrollbars=no,width=525,height=394');
 figDoc= popUpWin.document;
 zhtm= '<HTML><HEAD><TITLE>' + pPage + '</TITLE>';
 zhtm += '<link rel="stylesheet" href="/includes/stylesheets/ebooks.css"></head>';
 zhtm += '<BODY bgcolor="#FFFFFF">';
 zhtm += '<IMG SRC="' + fullPath + pPage + '">';
 zhtm += '<P><B>' + pPage + '</B>';
 zhtm += '</BODY></HTML>';
 window.popUpWin.document.write(zhtm);
 window.popUpWin.document.close();
 // Johnny Jackson 4/28/98
 }

//-->
                                                                
</SCRIPT>
<link rel="stylesheet" href="/includes/stylesheets/ebooks.css">

	
	<TITLE>Special Edition Using Visual C++ 6 -- Ch 12 -- Property Pages and Sheets</TITLE>
</HEAD>

<BODY TEXT="#000000" BGCOLOR="#FFFFFF">

<CENTER>
<H1><IMG SRC="../button/que.gif" WIDTH="171" HEIGHT="66" ALIGN="BOTTOM" BORDER="0"><BR>
Special Edition Using Visual C++ 6</H1>
</CENTER>
<CENTER>
<P><A HREF="../ch11/ch11.htm"><IMG SRC="../button/previous.gif" WIDTH="128" HEIGHT="28"
ALIGN="BOTTOM" ALT="Previous chapter" BORDER="0"></A><A HREF="../ch13/ch13.htm"><IMG
SRC="../button/next.gif" WIDTH="128" HEIGHT="28" ALIGN="BOTTOM" ALT="Next chapter"
BORDER="0"></A><A HREF="../index.htm"><IMG SRC="../button/contents.gif" WIDTH="128"
HEIGHT="28" ALIGN="BOTTOM" ALT="Contents" BORDER="0"></A> 
<HR>

</CENTER>
<CENTER>
<H1>- 12 -</H1>
</CENTER>
<CENTER>
<H1>Property Pages and Sheets</H1>
</CENTER>

<UL>
	<LI><A HREF="#Heading1">Introducing Property Sheets</A>
	<LI><A HREF="#Heading2">Creating the Property Sheet Demo Application</A>
	<UL>
		<LI><A HREF="#Heading3">Creating the Basic Files</A>
		<LI><A HREF="#Heading4">Editing the Resources</A>
		<LI><A HREF="#Heading5">Adding New Resources</A>
		<LI><A HREF="#Heading6">Associating Your Resources with Classes</A>
		<LI><A HREF="#Heading7">Creating a Property Sheet Class</A>
	</UL>
	<LI><A HREF="#Heading8">Running the Property Sheet Demo Application</A>
	<LI><A HREF="#Heading9">Adding Property Sheets to Your Applications</A>
	<LI><A HREF="#Heading10">Changing Property Sheets to Wizards</A>
	<UL>
		<LI><A HREF="#Heading11">Running the Wizard Demo Application</A>
		<LI><A HREF="#Heading12">Creating Wizard Pages</A>
		<LI><A HREF="#Heading13">Displaying a Wizard</A>
		<LI><A HREF="#Heading14">Setting the Wizard's Buttons</A>
		<LI><A HREF="#Heading15">Responding to the Wizard's Buttons</A>
	</UL>
</UL>

<P>
<HR SIZE="4">

<CENTER>
<H1></H1>
</CENTER>
<H2><A NAME="Heading1"></A>Introducing Property Sheets</H2>
<P>One of the newest types of graphical objects is the tabbed dialog box, also known
as a <I>property sheet.</I> A property sheet is a dialog box with two or more pages.
Windows and NT are loaded with property sheets, which organize the many options that
users can modify. You flip the pages by clicking labeled tabs at the top of the dialog
box. Using such dialog boxes to organize complex groups of options enables users
to more easily find the information and settings they need. As you've probably guessed,
Visual C++ 6 supports property sheets, with the classes CPropertySheet and CPropertyPage.</P>
<P>Similar to property sheets are <I>wizards,</I> which use buttons instead of tabs
to move from one page to another. You've seen a lot of wizards, too. These special
types of dialog boxes guide users step by step through complicated processes. For
example, when you use AppWizard to generate source code for a new project, the wizard
guides you through the entire process. To control the wizard, you click buttons labeled
Back, Next, and Finish.</P>
<P>Finding a sample property sheet is as easy as finding sand at the beach. Just
click virtually any Properties command or bring up an Options dialog in most applications.
For example, Figure 12.1 shows the dialog box that you see when you choose Tools,
Options from within Visual C++. This property sheet contains 12 pages in all, each
covering a different set of options.</P>
<P><A HREF="javascript:popUp('12uvc01.gif')"><B>FIG. 12.1</B></A><B> </B><I>The Options
properties sheet contains many tabbed pages.</I></P>
<P>


<BLOCKQUOTE>
	<P>
<HR>
<strong>NOTE:</strong> Many people forget the difference between a property sheet and a
	property page. A <I>property sheet</I> is a window that contains property pages.
	<I>Property pages</I> are windows that hold controls. They appear on the property
	sheet.&#160; 
<HR>


</BLOCKQUOTE>

<P>As you can see, property sheets are a great way to organize many types of related
options. Gone are the days of dialog boxes so jam-packed with options that you needed
a college-level course just to figure them out. In the following sections, you'll
learn to program your own tabbed property sheets by using MFC's CPropertySheet and
CPropertyPage classes.</P>
<P>
<H2><A NAME="Heading2"></A>Creating the Property Sheet Demo Application</H2>
<P>Now that you've had an introduction to property sheets, it's time to learn how
to build an application that uses these handy specialized dialog boxes. You're about
to build the Property Sheet Demo application, which demonstrates the creation and
manipulation of property sheets. Follow the steps in the following sections to create
the basic application and modify its resources.</P>
<P>
<H3><A NAME="Heading3"></A>Creating the Basic Files</H3>
<P>First, use AppWizard to create the basic files for the Property Sheet Demo program,
selecting the options listed in the following table. When you're done, the New Project
Information dialog box appears; it will look like Figure 12.2. Click OK to create
the project files.</P>
<P>
<TABLE BORDER="1">
	<TR ALIGN="LEFT" VALIGN="TOP">
		<TD ALIGN="LEFT"><B>Dialog Box Name</B></TD>
		<TD ALIGN="LEFT"><B>Options to Select</B></TD>
	</TR>
	<TR ALIGN="LEFT" VALIGN="TOP">
		<TD ALIGN="LEFT">New, Project tab</TD>
		<TD ALIGN="LEFT">Name the project Propsheet and then set the project path to the directory in which
			you want to store the project's files. Make sure that MFC AppWizard (exe) is highlighted.
			Leave the other options set to their defaults.</TD>
	</TR>
	<TR ALIGN="LEFT" VALIGN="TOP">
		<TD ALIGN="LEFT">Step 1</TD>
		<TD ALIGN="LEFT">Select Single Document.</TD>
	</TR>
	<TR ALIGN="LEFT" VALIGN="TOP">
		<TD ALIGN="LEFT">Step 2 of 6</TD>
		<TD ALIGN="LEFT">Leave set to defaults.</TD>
	</TR>
	<TR ALIGN="LEFT" VALIGN="TOP">
		<TD ALIGN="LEFT">Step 3 of 6</TD>
		<TD ALIGN="LEFT">Leave set to defaults.</TD>
	</TR>
	<TR ALIGN="LEFT" VALIGN="TOP">
		<TD ALIGN="LEFT">Step 4 of 6</TD>
		<TD ALIGN="LEFT">Turn off all application features.</TD>
	</TR>
	<TR ALIGN="LEFT" VALIGN="TOP">
		<TD ALIGN="LEFT">Step 5 of 6</TD>
		<TD ALIGN="LEFT">Leave set to defaults.</TD>
	</TR>
	<TR ALIGN="LEFT" VALIGN="TOP">
		<TD ALIGN="LEFT">Step 6 of 6</TD>
		<TD ALIGN="LEFT">Leave set to defaults.</TD>
	</TR>
</TABLE>
</P>
<P><A HREF="javascript:popUp('12uvc02.gif')"><B>FIG. 12.2</B></A><B> </B><I>Your
New Project Information dialog box looks like this.</I></P>
<P>
<H3><A NAME="Heading4"></A>Editing the Resources</H3>
<P>Now you'll edit the resources in the application generated for you by AppWizard,
removing unwanted menus and accelerators, editing the About box, and most importantly,
adding a menu item that will bring up a property sheet. Follow these steps:</P>

<DL>
	<DT></DT>
	<DD><B>1. </B>Select the ResourceView tab in the project workspace window. Developer
	Studio displays the ResourceView window (see Figure 12.3).
	<P>
</DL>

<P><A HREF="javascript:popUp('12uvc03.gif')"><B>FIG. 12.3</B></A><B> </B><I>The ResourceView
tab displays the ResourceView window.</I></P>

<DL>
	<DD><B>2. </B>In the ResourceView window, click the plus sign next to Propsheet Resources
	to display the application's resources. Click the plus sign next to Menu and then
	double-click the IDR_MAINFRAME menu ID. Visual C++'s menu editor appears, displaying
	the IDR_MAINFRAME menu generated by AppWizard.
	<P>
	<DT></DT>
	<DD><B>3. </B>Click the Property Sheet Demo application's Edit menu (not Visual C++'s
	Edit menu) and then press Delete to delete the Edit menu. A dialog box asks for verification
	of the Delete command; click OK.
	<P>
	<DT></DT>
	<DD><B>4. </B>Double-click the About Propsheet... item in the Help menu to bring
	up its properties dialog box. Change the caption to <B>&amp;About Property Sheet
	Demo</B>. Pin the properties dialog box in place by clicking the pushpin in the upper-left
	corner.
	<P>
	<DT></DT>
	<DD><B>5. </B>On the application's File menu, delete all menu items except Exit.
	<P>
	<DT></DT>
	<DD><B>6. </B>Select the blank menu item at the end of the File menu, and change
	the caption to <B>&amp;Property Sheet...</B> and the command ID to <B>ID_PROPSHEET</B>
	(see Figure 12.4). Then use your mouse to drag the new command above the Exit command
	so that it's the first command in the File menu.
	<P>
</DL>

<P><A HREF="javascript:popUp('12uvc04.gif')"><B>FIG. 12.4</B></A><B> </B><I>Add a
Property Sheet command to the File menu.</I></P>
<P>

<DL>
	<DD><B>7. </B>Click the + next to Accelerator in the ResourceView window and highlight
	the IDR_MAINFRAME accelerator ID. Press Delete to delete all accelerators from the
	application.
	<P>
	<DT></DT>
	<DD><B>8. </B>Click the + next to Dialog in the ResourceView window. Double-click
	the IDD_ABOUTBOX dialog box ID to bring up the dialog box editor.
	<P>
	<DT></DT>
	<DD><B>9. </B>Modify the dialog box by clicking the title so that the properties
	box refers to the whole dialog box. Change the caption to<B> About Property Sheet
	Demo</B>.
	<P>
	<DT></DT>
	<DD><B>10. </B>Click the first static text string and change the caption to <B>Property
	Sheet Demo, Version 1.0</B>. Click the second and add <B>Que Books</B> to the end
	of the copyright string.
	<P>
	<DT></DT>
	<DD><B>11. </B>Add a third static string with the text <B>Special Edition</B> <B>Using
	Visual C++ 6</B> so that your About box resembles the one in Figure 12.5. Close the
	dialog box editor.
	<P>
	<DT></DT>
	<DD><B>12. </B>Click the + next to String Table in the ResourceView window. Double-click
	the String Table ID to bring up the string table editor.
	<P>
	<DT></DT>
	<DD><B>13. </B>Double-click the IDR_MAINFRAME string and then change the first segment
	of the string to <B>Property Sheet Demo</B> (see Figure 12.6). The meanings of these
	strings are discussed in Chapter 15, &quot;Building an ActiveX Server Application,&quot;
	in the &quot;Shortcomings of This Server&quot; section. The one you just changed
	is the Window Title, used in the title bar of the application.
	<P>
</DL>

<P><A HREF="javascript:popUp('12uvc05.gif')"><B>FIG. 12.5</B></A><B> </B><I>The About
box looks like this.</I></P>
<P><A HREF="javascript:popUp('12uvc06.gif')"><B>FIG. 12.6</B></A><B> </B><I>The first
segment of the IDR_MAINFRAME string appears in your main window's title bar.</I></P>
<H3><I></I></H3>
<H3><A NAME="Heading5"></A>Adding New Resources</H3>
<P>Now that you have the application's basic resources the way you want them, it's
time to add the resources that define the application's property sheet. This means
creating dialog box resources for each page in the property sheet. Follow these steps:</P>

<DL>
	<DT></DT>
	<DD><B>1. </B>Click the New Dialog button on the Resource toolbar, or press Ctrl+1,
	to create a new dialog box resource. The new dialog box, IDD_DIALOG1, appears in
	the dialog box editor. This dialog box, when set up properly, will represent the
	first page of the property sheet.
	<P>
	<DT></DT>
	<DD><B>2. </B>Delete the OK and Cancel buttons by selecting each with your mouse
	and then pressing Delete.
	<P>
	<DT></DT>
	<DD><B>3. </B>If the Properties box isn't still up, bring it up by choosing View,
	Properties. Change the ID of the dialog box to <B>IDD_PAGE1DLG</B> and the caption
	to <B>Page 1</B> (see Figure 12.7).
	<P>
</DL>

<P><A HREF="javascript:popUp('12uvc07.gif')"><B>FIG. 12.7</B></A><B> </B><I>Change
the caption and resource ID of the new dialog box.</I></P>

<DL>
	<DD><B>4. </B>Click the Styles tab of the dialog box's property sheet. In the Style
	drop-down box select Child, and in the Border drop-down box select Thin. Turn off
	the System Menu check box. Your properties dialog box will resemble Figure 12.8.

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美不卡视频一区| 一区二区三区四区在线播放| 色综合中文字幕| 精品在线播放午夜| 一区二区三区国产豹纹内裤在线 | 91精品国产欧美日韩| 成人蜜臀av电影| 麻豆精品视频在线观看免费| 亚洲三级免费观看| 久久综合九色综合97婷婷女人| 在线一区二区观看| 丰满少妇在线播放bd日韩电影| 蜜乳av一区二区三区| 一区二区三区中文字幕精品精品| 精品av久久707| 欧美精品久久天天躁| 一本色道综合亚洲| 成人动漫在线一区| 在线播放一区二区三区| 成人av网站免费| 高清不卡一区二区在线| 极品少妇一区二区三区精品视频| 亚洲成人福利片| 亚洲尤物视频在线| 亚洲欧美日韩一区| 国产女同互慰高潮91漫画| xfplay精品久久| 欧美成人女星排行榜| 日韩亚洲欧美综合| 777久久久精品| 亚洲欧洲精品天堂一级| 国产欧美精品一区二区三区四区| xnxx国产精品| 久久精品一区二区三区不卡牛牛| 精品国产伦理网| 精品国产一区二区三区不卡| 精品久久国产97色综合| 26uuu亚洲| 久久精品视频一区二区| 欧美国产亚洲另类动漫| 国产精品美女久久久久aⅴ| 亚洲国产精品激情在线观看| 国产欧美一区二区精品秋霞影院 | 欧美一区二区福利视频| 欧美剧在线免费观看网站 | 91一区在线观看| 不卡av在线网| 色综合久久天天| 欧美日韩一级黄| 欧美精品一卡二卡| 日韩午夜精品视频| 久久亚洲一级片| 国产精品福利电影一区二区三区四区| 国产精品家庭影院| 一区二区欧美在线观看| 五月综合激情婷婷六月色窝| 奇米影视7777精品一区二区| 经典三级视频一区| 成人av电影免费观看| 色呦呦日韩精品| 91麻豆精品国产综合久久久久久| 这里只有精品电影| 久久久久国色av免费看影院| 亚洲日本护士毛茸茸| 亚洲国产人成综合网站| 美女视频免费一区| 成人av资源在线观看| 欧洲精品视频在线观看| 欧美成人性战久久| 国产精品美女久久久久久久| 亚洲一二三专区| 美女视频一区在线观看| 成人福利视频网站| 欧美色成人综合| 久久久久久久电影| 一区二区三区美女视频| 激情小说亚洲一区| 91国偷自产一区二区开放时间| 在线综合视频播放| 中文字幕中文字幕在线一区 | 99re成人精品视频| 在线不卡a资源高清| 欧美国产欧美亚州国产日韩mv天天看完整| 国产精品久久午夜| 蜜臀久久久99精品久久久久久| 成人91在线观看| 日韩精品中文字幕在线一区| 成人免费小视频| 青青草原综合久久大伊人精品 | 欧美二区乱c少妇| 亚洲国产高清在线| 亚洲成a人片在线不卡一二三区| 国产九色精品成人porny| 欧美在线播放高清精品| 久久久九九九九| 日韩中文字幕亚洲一区二区va在线| 成人18视频在线播放| 欧美不卡在线视频| 午夜精品一区在线观看| 99视频一区二区三区| 久久综合九色综合97婷婷女人| 一区二区三区加勒比av| av不卡免费在线观看| 久久综合中文字幕| 日韩精品一二三区| 精品视频123区在线观看| 国产精品福利一区| 国产91精品久久久久久久网曝门| 欧美一级爆毛片| 天天影视网天天综合色在线播放| 97精品国产97久久久久久久久久久久 | 三级一区在线视频先锋| 成人午夜电影小说| 日韩欧美中文一区| 天天影视色香欲综合网老头| 日本道免费精品一区二区三区| 久久精品欧美一区二区三区麻豆 | 91色婷婷久久久久合中文| 国产亚洲视频系列| 精品影院一区二区久久久| 在线不卡一区二区| 日韩高清在线观看| 7777精品伊人久久久大香线蕉最新版| 亚洲综合一二三区| 日本道在线观看一区二区| 亚洲精品免费播放| 色婷婷av一区二区| 一二三区精品视频| 欧美最猛黑人xxxxx猛交| 亚洲综合视频网| 欧美日韩国产片| 亚洲电影第三页| 欧美日韩一区二区三区四区 | 久久久美女艺术照精彩视频福利播放| 青青草精品视频| 日韩精品中文字幕在线不卡尤物| 日本中文在线一区| 日韩三级免费观看| 精品亚洲porn| 久久久久国产一区二区三区四区| 久久国内精品自在自线400部| 日韩欧美中文字幕公布| 精品一区二区影视| 国产亚洲精品超碰| 99久久精品国产一区二区三区| 亚洲人xxxx| 欧美日韩一区二区三区四区五区| 五月天激情综合| 精品捆绑美女sm三区| 国产乱妇无码大片在线观看| 国产日韩欧美一区二区三区乱码 | 欧美精品久久99| 另类综合日韩欧美亚洲| 国产丝袜美腿一区二区三区| proumb性欧美在线观看| 亚洲精品精品亚洲| 91精品国产一区二区三区蜜臀| 国产在线播放一区三区四| 亚洲欧洲日韩一区二区三区| 在线观看亚洲专区| 青青草视频一区| 国产精品女上位| 欧美日韩亚洲综合在线| 狠狠v欧美v日韩v亚洲ⅴ| 国产精品乱子久久久久| 欧美日韩免费一区二区三区| 精品在线免费视频| 亚洲精品国产精华液| 日韩一级片网站| proumb性欧美在线观看| 视频一区二区中文字幕| 国产欧美日韩另类视频免费观看| 在线亚洲精品福利网址导航| 美腿丝袜亚洲综合| 亚洲欧美日韩国产另类专区| 欧美一级艳片视频免费观看| www.成人在线| 麻豆精品久久精品色综合| 国产精品国产成人国产三级 | 欧美绝品在线观看成人午夜影视| 国产呦精品一区二区三区网站| 亚洲伦在线观看| 精品国产第一区二区三区观看体验| 色综合天天天天做夜夜夜夜做| 六月婷婷色综合| 亚洲一卡二卡三卡四卡无卡久久| 久久久久久久久久美女| 欧美军同video69gay| 99精品欧美一区二区三区综合在线| 麻豆成人av在线| 一区二区激情视频| 国产精品美女久久久久高潮| 日韩午夜在线播放| 欧美视频精品在线观看| 成人综合在线观看| 毛片不卡一区二区| 亚洲影院久久精品| 国产精品成人免费精品自在线观看 | 亚洲精品视频在线观看网站| www欧美成人18+|