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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ch05.htm

?? 24小時精通VC
?? HTM
?? 第 1 頁 / 共 3 頁
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>

<HEAD>
	
	<TITLE>Teach Yourself Visual C++&#174; 5 in 24 Hours -- Hour 5 -- Button Controls</TITLE>
</HEAD>

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

<CENTER>
<H1><IMG SRC="sams.gif" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/button/sams.gif" WIDTH="171" HEIGHT="66" ALIGN="BOTTOM" BORDER="0"><BR>
<FONT COLOR="#000077">Teach Yourself Visual C++&#174; 5 in 24 Hours</FONT></H1>
</CENTER>
<CENTER>
<P><A HREF="ch04.htm" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/ch04/ch04.htm"><IMG SRC="previous.gif" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/button/previous.gif" WIDTH="128" HEIGHT="28"
ALIGN="BOTTOM" ALT="Previous chapter" BORDER="0"></A><A HREF="ch06.htm" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/ch06/ch06.htm"><IMG
SRC="next.gif" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/button/next.gif" WIDTH="128" HEIGHT="28" ALIGN="BOTTOM" ALT="Next chapter"
BORDER="0"></A><A HREF="index-1.htm" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/index.htm"><IMG SRC="contents.gif" tppabs="http://www.mcp.com/824169600/0-672/0-672-31242-5/button/contents.gif" WIDTH="128"
HEIGHT="28" ALIGN="BOTTOM" ALT="Contents" BORDER="0"></A> 
<HR>

</CENTER>
<CENTER>
<H1><FONT COLOR="#000077">- Hour 5 -<BR>
Button Controls</FONT></H1>
</CENTER>
<P>Button controls are probably the most flexible controls available in Windows.
Before learning about buttons, though, it's important to begin with a short lesson
about conditional expressions in C++ programs. In this hour you will also learn about

<UL>
	<LI>Using the different types of button controls provided by Windows<BR>
	<BR>
	
	<LI>Using the MFC <TT>CButton</TT> class that is used to manage button controls<BR>
	<BR>
	
	<LI>Using the MFC <TT>CWnd</TT> class to enable and disable controls
</UL>

<P>Later this hour, you will add each type of button to a dialog box-based project.
You will also use ClassWizard to add button events and member variables for the dialog
box's button controls.
<H2><FONT COLOR="#000077"><B>What Are Conditional Expressions?</B></FONT></H2>
<P><FONT COLOR="#000077"><B>New Term:</B></FONT><B> </B>A <I>conditional expression</I>
is an expression that results in a <TT>true</TT> or <TT>false</TT> value.</P>
<P>Most programs exercise some type of control over their execution flow using conditional
expressions. They perform different actions based on varying conditions as the execution
progresses. Then, they repeat these actions until all their tasks are complete. For
example, a Windows program might need to search for a certain record from a database,
or might take different actions depending on the messages that are sent to it.</P>
<P><FONT COLOR="#000077"><B>New Term:</B></FONT><B> </B>A <I>selection statement</I>
uses a conditional expression to pick a particular path of execution in your program.
This is similar to choosing a fork in the road.</P>
<P><FONT COLOR="#000077"><B>New Term:</B></FONT><B> </B>A <I>sequence statement </I>uses
a conditional expression to determine how often to execute a part of your program.
<H3><FONT COLOR="#000077"><B>Selecting an Execution Path with Selection Statements</B></FONT></H3>
<P>The first set of control statements to look at are the selection statements. If
your program must take a particular action only if a certain condition is <TT>true</TT>,
or if a user must make a choice from a list of possible items, these statements are
for you.


<BLOCKQUOTE>
	<P>
<HR>
<FONT COLOR="#000077"><B>Just a Minute:</B></FONT><B> </B>All selection statements
	work by evaluating an expression, then taking an action based on the value of that
	expression. 
<HR>


</BLOCKQUOTE>

<H4><FONT COLOR="#000077">Using the if Statement</FONT></H4>
<P>The <TT>if</TT> statement enables one or more statements to be executed only if
an expression inside the parentheses is <TT>true</TT>. If necessary, values inside
the parentheses are converted into Boolean values, with zero being converted to <TT>false</TT>
and all non-zero values converted to <TT>true</TT>.</P>
<P>Listing 5.1 provides a function that shows how the <TT>if</TT> statement is used.
If the parameter passed to the function is greater than zero, the function returns
a value of <TT>true</TT>.
<H4><FONT COLOR="#000077">TYPE: Listing 5.1. A function that returns true if a positive
number is passed to it.</FONT></H4>
<PRE><FONT COLOR="#0066FF"><TT>bool IsPositive( int nCheckValue )</TT>
<TT>{</TT>
<TT>    bool bReturn = false;</TT>

<TT>    if( nCheckValue &gt; 0 )</TT>
<TT>        bReturn = true;</TT>

<TT>    return bReturn;</TT>
</FONT></PRE>
<P><TT>}</TT>
<H4><FONT COLOR="#000077">Using Compound Statements</FONT></H4>
<P>The statement controlled by an <TT>if</TT> statement is executed only when the
test condition is <TT>true</TT>. If more than one statement must be executed, group
the statements together to form a compound statement. Compound statements are often
called <I>blocks</I> because they group statements into blocks of code.</P>
<P>A compound statement begins and ends with curly braces, just like a function body.
All the statements within a compound statement that follows an <TT>if</TT> statement
are executed when the test condition is <TT>true</TT>, as shown in Listing 5.2.
<H4><FONT COLOR="#000077">TYPE: Listing 5.2. Using a compound statement to group
several statements together.</FONT></H4>
<PRE><FONT COLOR="#0066FF"><TT>void PrintTest(bool bShouldPrint)</TT>
<TT>{</TT>
<TT>    if( bShouldPrint == true )</TT>
<TT>    {</TT>
<TT>        cout &lt;&lt; &quot;A short demonstration of&quot; &lt;&lt; endl;</TT>
<TT>        cout &lt;&lt; &quot;a compound statement - also&quot; &lt;&lt; endl;</TT>
<TT>        cout &lt;&lt; &quot;known as a block.&quot; &lt;&lt; endl;</TT>
<TT>    }</TT>
</FONT></PRE>
<P><TT>}</TT> In Listing 5.2, the test for equality is made using <TT>==</TT>, the
equality operator.


<BLOCKQUOTE>
	<P>
<HR>
<FONT COLOR="#000077"><B>CAUTION:</B></FONT><B> </B>A common mistake is to use <TT>=</TT>,
	which is the assignment operator. 
<HR>


</BLOCKQUOTE>

<P>A standard code-formatting convention is to visually nest each conditional &quot;level&quot;
of your source code by indenting statements, as in Listings 5.1 and 5.2. Indentation
helps make your code more readable because it helps make the flow of control in your
source code easy to see.
<H4><FONT COLOR="#000077">Using else with if Statements</FONT></H4>
<P>You can couple an <TT>else</TT> statement with an <TT>if</TT> statement to create
an either/or selection. When the expression tested by the <TT>if</TT> statement is
<TT>true</TT>, the first statement (or block statement) is executed. When the expression
is <TT>false</TT>, the statements grouped with the <TT>else</TT> statement are executed
instead.</P>
<P>Listing 5.3 provides an example of a function that uses the <TT>if</TT> and <TT>else</TT>
statements. This function always returns the larger of two parameters passed to it.
<H4><FONT COLOR="#000077">TYPE: Listing 5.3. A function that uses the if and else
statements.</FONT></H4>
<PRE><FONT COLOR="#0066FF"><TT>int GetMax( int nFirst, int nLast )</TT>
<TT>{</TT>
<TT>    int nReturn;</TT>

<TT>    if( nFirst &gt; nLast )</TT>
<TT>        nReturn = nFirst;</TT>
<TT>    else</TT>
<TT>        nReturn = nLast;</TT>

<TT>    return nReturn;</TT>
</FONT></PRE>
<P><TT>}</TT>
<H4><FONT COLOR="#000077">Using the switch Statement</FONT></H4>
<P>Sometimes you must choose between more than just one or two alternatives. Suppose
you are implementing a simple menu function with three choices. If you use the <TT>if</TT>
statement, you might wind up with a function like the one shown in Listing 5.4.
<H4><FONT COLOR="#000077">TYPE: Listing 5.4. A menu-selection function.</FONT></H4>
<PRE><FONT COLOR="#0066FF"><TT>//</TT>
<TT>// Processes a selection from a character-based menu. If a</TT>
<TT>// valid selection is made, the proper functions are called,</TT>
<TT>// and true is returned. If an invalid selection is made,</TT>
<TT>// false is returned.</TT>
<TT>bool HandleMenuSelection( char chSelection )</TT>
<TT>{</TT>
<TT>    bool bValidSelection = true;</TT>

<TT>    if( chSelection == `F' )</TT>
<TT>        OpenNewFile();</TT>
<TT>    else if( chSelection == `P' )</TT>
<TT>        PrintDocument();</TT>
<TT>    else if( chSelection == `S' )</TT>
<TT>        SaveFile();</TT>
<TT>    else</TT>
<TT>        bValidSelection = false;</TT>

<TT>    return bValidSelection;</TT>
<TT>}</TT> </FONT></PRE>
<P>This is already starting to look a little cluttered, but how bad would it look
if you had a few more selections? What if you had 20 or 30? The solution is to use
the <TT>switch</TT> statement. A <TT>switch</TT> statement evaluates an expression
and then chooses from a list of choices, as shown in Listing 5.5.
<H4><FONT COLOR="#000077">TYPE: Listing 5.5. Using the switch statement.</FONT></H4>
<PRE><FONT COLOR="#0066FF"><TT>bool HandleMenuSelection( char chSelection )</TT>
<TT>{</TT>
<TT>    bool bValidSelection = true;</TT>

<TT>    switch( chSelection )</TT>
<TT>    {</TT>
<TT>        case `F':</TT>
<TT>            OpenNewFile();</TT>
<TT>            break;</TT>
<TT>        case `P':</TT>
<TT>            PrintDocument();</TT>
<TT>            break;</TT>
<TT>        case `S':</TT>
<TT>            SaveFile();</TT>
<TT>            break;</TT>

<TT>        default:</TT>
<TT>            bValidSelection = false;</TT>
<TT>    }</TT>
<TT>    return bValidSelection;</TT>
<TT>}</TT> </FONT></PRE>
<P>As Listing 5.5 shows, the <TT>switch</TT> statement has several different parts.
Here are the major features of a <TT>switch</TT> statement:

<UL>
	<LI>The <TT>switch()</TT> expression. The expression contained inside the <TT>switch</TT>
	parentheses is evaluated, and its value is used as the basis for making the selection.<BR>
	<BR>
	
	<LI>One or more <TT>case</TT> labels. Each <TT>case</TT> label includes a value.
	Every <TT>case</TT> label must be unique. If a <TT>case</TT> label's value matches
	the <TT>switch</TT> expression, the statements after the <TT>case</TT> label are
	executed.<BR>
	<BR>
	
	<LI>One or more <TT>break</TT> statements. The <TT>break</TT> statement is used to
	stop execution inside a <TT>switch</TT> statement. A <TT>break</TT> statement is
	normally placed between every <TT>case</TT>. If a <TT>break</TT> statement is removed,
	statements in the next <TT>case</TT> are executed until a <TT>break</TT> is reached,
	or until no more statements remain inside the <TT>switch</TT>.<BR>
	<BR>
	
	<LI>A default label. The default label is selected when no <TT>case</TT> labels match
	the <TT>switch</TT> expression.
</UL>

<H2><FONT COLOR="#000077"><B>What Is a Button?</B></FONT></H2>
<P><FONT COLOR="#000077"><B>New Term:</B></FONT><B> </B>A <I>button</I> is a special
type of window that contains a text or bitmap label, usually found in a dialog box,
toolbar, or other window containing controls.</P>
<P>Five different types of buttons are provided by Windows:

<UL>
	<LI><I>Pushbuttons</I> have a raised, three-dimensional appearance and seem to be
	depressed as they are clicked with the mouse. Pushbuttons normally have a text label
	on the face of the control.<BR>
	<BR>
	
	<LI><I>Radio buttons</I> consist of a round button with a label adjacent to it.<BR>
	<BR>
	
	<LI><I>Check boxes</I> are made up of a square box that contains a check mark when
	selected and a label next to the control.<BR>
	<BR>
	
	<LI><I>Owner-drawn</I> buttons are painted by the button's owner instead of by Windows.<BR>
	<BR>
	
	<LI><I>Group boxes</I> are simply rectangles that are used to surround other controls
	that have a common purpose.
</UL>

<P>In general, buttons are used to indicate a user selection. Buttons are used in
Windows programs because they are convenient and easy for users to operate. Users
have come to expect buttons to be presented in a large number of cases, especially
when dialog boxes are present in a program.
<H3><FONT COLOR="#000077"><B>What Are Pushbuttons?</B></FONT></H3>
<P>Almost every dialog box has at least one pushbutton control to indicate actions
that a user can invoke. Some common uses for pushbuttons include closing a dialog
box, beginning a search, or asking for help.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美二区在线观看| 一本到不卡精品视频在线观看| 依依成人精品视频| 亚洲日本韩国一区| 一区二区三国产精华液| 一区二区日韩电影| 丝袜美腿成人在线| 久久91精品久久久久久秒播| 久久国产综合精品| 国产精品一级片在线观看| 国产ts人妖一区二区| gogo大胆日本视频一区| 91久久精品一区二区| 欧美高清激情brazzers| 精品少妇一区二区三区在线视频| 精品免费99久久| 国产精品三级在线观看| 亚洲尤物视频在线| 裸体健美xxxx欧美裸体表演| 国产综合一区二区| 一本到三区不卡视频| 欧美一区二区三区免费在线看 | 欧美日韩国产综合一区二区| 欧美在线观看视频一区二区| 欧美日韩国产成人在线91| 精品日韩在线观看| 一区二区中文视频| 日本不卡的三区四区五区| 精品一区二区免费在线观看| 成人高清免费观看| 91.xcao| 久久久久久久av麻豆果冻| 一区二区三区国产豹纹内裤在线| 免费精品视频在线| 91在线视频免费观看| 91精品国产品国语在线不卡| 国产精品三级av| 久久精品噜噜噜成人88aⅴ| 成人精品视频.| 日韩一级片在线观看| 国产精品九色蝌蚪自拍| 另类成人小视频在线| 在线观看一区日韩| 久久久久久久久久久黄色| 亚洲国产一区视频| 成人app网站| 26uuu国产一区二区三区| 亚洲小说欧美激情另类| 不卡影院免费观看| 精品成人免费观看| 老司机午夜精品99久久| 欧美视频一区在线| 亚洲免费观看高清在线观看| 九九精品一区二区| 日韩一级完整毛片| 亚洲成人高清在线| 日本道色综合久久| 一区在线中文字幕| 成人久久18免费网站麻豆| 日韩欧美国产综合| 视频在线在亚洲| 欧美视频三区在线播放| 亚洲伦理在线精品| av在线综合网| 专区另类欧美日韩| 国产成人在线视频播放| 2024国产精品| 国产自产高清不卡| 日韩欧美一二三区| 日本成人中文字幕在线视频| 欧美人体做爰大胆视频| 亚洲国产欧美日韩另类综合| 在线欧美日韩国产| 一区二区不卡在线播放 | 亚洲视频在线一区二区| 懂色av中文一区二区三区| 久久久不卡影院| 国产精品996| 国产午夜精品一区二区三区嫩草| 国产精品一区一区三区| 久久美女艺术照精彩视频福利播放| 久久av老司机精品网站导航| 精品国产免费一区二区三区香蕉| 麻豆精品视频在线| 精品精品国产高清一毛片一天堂| 激情综合色丁香一区二区| 欧美电视剧在线看免费| 国产不卡免费视频| 亚洲情趣在线观看| 欧美日韩一级黄| 精品在线一区二区| 国产精品久久久久久妇女6080| 99re热这里只有精品免费视频| 亚洲欧美日韩国产手机在线| 欧美日韩一区高清| 激情欧美一区二区三区在线观看| 久久久精品天堂| 色乱码一区二区三区88| 奇米在线7777在线精品| 久久欧美一区二区| 色吧成人激情小说| 奇米777欧美一区二区| 亚洲国产成人午夜在线一区| 欧洲国内综合视频| 国产在线国偷精品产拍免费yy| 国产精品久久影院| 制服视频三区第一页精品| 国产一区二区91| 一区二区三区欧美激情| 欧美va亚洲va| 在线观看日韩精品| 久国产精品韩国三级视频| 日韩伦理免费电影| 精品免费国产二区三区| 色乱码一区二区三区88| 国产精品一区二区91| 日韩国产高清在线| 日韩毛片精品高清免费| 久久久噜噜噜久久中文字幕色伊伊| 色综合久久久久综合体| 久久99蜜桃精品| 亚洲风情在线资源站| 国产精品久久久久国产精品日日| 91精品国产综合久久久久久漫画 | 亚洲一区二区三区视频在线| 精品免费日韩av| 欧美日韩中文字幕精品| a在线播放不卡| 高潮精品一区videoshd| 天天操天天干天天综合网| 亚洲欧洲另类国产综合| 久久婷婷综合激情| 欧美一区二区在线播放| 欧洲日韩一区二区三区| 成人黄色在线看| 国产精品一区二区在线看| 久久国产成人午夜av影院| 天天影视涩香欲综合网 | 精品国内片67194| 91精品国产欧美日韩| 精品污污网站免费看| 色婷婷综合久久久久中文一区二区 | 欧美在线啊v一区| 91小视频免费观看| 99视频精品全部免费在线| 成人h动漫精品一区二| 国产成人免费视频| 国产激情视频一区二区在线观看| 久久成人久久爱| 精品在线一区二区| 国产aⅴ精品一区二区三区色成熟| 精品一区二区三区久久| 国产精品一区二区在线播放| 国产福利一区二区三区视频 | 久久综合九色综合97婷婷女人 | 欧美色网一区二区| 欧美三级日韩三级| 欧美一区二区在线视频| 欧美一级久久久| 久久精品一二三| 国产精品久线观看视频| 亚洲男人的天堂在线aⅴ视频| 中文字幕一区二区三区av| 中文字幕亚洲精品在线观看| 亚洲日穴在线视频| 亚洲国产精品久久一线不卡| 亚洲大片在线观看| 久久国产精品99精品国产 | 精品写真视频在线观看| 国产精品一级在线| 日本韩国一区二区三区| 欧美日本在线一区| www成人在线观看| 国产精品国产a| 天天综合色天天综合| 国产一区二区三区久久悠悠色av| jlzzjlzz欧美大全| 欧美精品777| 亚洲国产精品成人综合 | 成人一级视频在线观看| 色呦呦网站一区| 欧美成人精品1314www| 中文无字幕一区二区三区| 亚洲综合免费观看高清完整版 | www国产成人免费观看视频 深夜成人网| 久久久国产精华| 亚洲韩国精品一区| 国产主播一区二区三区| 在线观看av一区二区| 欧美精品一区二区三区在线 | 日韩小视频在线观看专区| 国产精品网站一区| 免费在线观看日韩欧美| 97久久人人超碰| 日韩精品一区二区三区swag| 亚洲人精品午夜| 国产精品99久久久久久宅男| 欧美人与z0zoxxxx视频| 亚洲色图欧洲色图| 国产在线精品一区二区三区不卡|