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

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

?? apb.htm

?? 好的教程Vc++21 天
?? HTM
?? 第 1 頁 / 共 5 頁
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"><HTML><HEAD>	<META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=iso-8859-1"><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 += '</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">	<META NAME="GENERATOR" Content="Symantec Visual Page Mac 1.1.1">	<TITLE>Teach Yourself Visual C++ 6 in 21 Days -- Appendix B -- Answers</TITLE></HEAD><BODY TEXT="#000000" BGCOLOR="#FFFFFF"><H1 ALIGN="CENTER"><IMG SRC="../button/sams.gif" WIDTH="171" HEIGHT="66" ALIGN="BOTTOM"BORDER="0"><BR>Teach Yourself Visual C++ 6 in 21 Days</H1><CENTER><P><A HREF="../apa/apa.htm"><IMG SRC="../button/previous.gif" WIDTH="128" HEIGHT="28"ALIGN="BOTTOM" ALT="Previous chapter" BORDER="0"></A><A HREF="../apc/apc.htm"><IMGSRC="../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><H1 ALIGN="CENTER">- B -<BR>Answers</H1><UL>	<LI><A HREF="#Heading1">Day 1</A>	<LI><A HREF="#Heading4">Day 2</A>	<LI><A HREF="#Heading7">Day 3</A>	<LI><A HREF="#Heading10">Day 4</A>	<LI><A HREF="#Heading12">Exercise</A>	<LI><A HREF="#Heading13">Day 5</A>	<LI><A HREF="#Heading16">Day 6</A>	<LI><A HREF="#Heading19">Day 7</A>	<LI><A HREF="#Heading22">Day 8</A>	<LI><A HREF="#Heading25">Day 9</A>	<LI><A HREF="#Heading28">Day 10</A>	<LI><A HREF="#Heading31">Day 11</A>	<LI><A HREF="#Heading34">Day 12</A>	<LI><A HREF="#Heading37">Day 13</A>	<LI><A HREF="#Heading40">Day 14</A>	<LI><A HREF="#Heading43">Day 15</A>	<LI><A HREF="#Heading46">Day 16</A>	<LI><A HREF="#Heading49">Day 17</A>	<LI><A HREF="#Heading52">Day 18</A>	<LI><A HREF="#Heading55">Day 19</A>	<LI><A HREF="#Heading58">Day 20</A>	<LI><A HREF="#Heading61">Day 21</A></UL><P><HR SIZE="4"><BR>This appendix provides the answers to the quiz questions and exercises at the endof each chapter.</P><P><H2><A NAME="Heading1"></A>Day 1</H2><H2>Quiz</H2><DL>	<DT></DT>	<DD><B>1. </B>How do you change the caption on a button?	<P>	<DT></DT>	<DD>In the window layout editor, select the button to be changed. Right-click the	mouse and select Properties from the pop-up menu. Change the value in the Caption	field.	<P>	<DT></DT>	<DD><B>2. </B>What can you do with the Visual C++ AppWizard?	<P>	<DT></DT>	<DD>You can use it to build a shell for your application, based on the type of application	and the functionality needs of the application. The shell will have support for the	desired functionality already built in.	<P>	<DT></DT>	<DD><B>3. </B>How do you attach functionality to the click of a button?	<P>	<DT></DT>	<DD>By using the Class Wizard, you can create a function and attach it to an object	for handling a specific Windows message. The Class Wizard creates the function and	can take you right to the spot in the function's code where you need to begin adding	your own code.	<P></DL><H3>Exercise</H3><P>Add a second button to the About window in your application. Have the button displaya different message from the one on the first window.</P><DL>	<DT></DT>	<DD><B>1. </B>In the workspace pane, select the Resource View tab.	<P>	<DT></DT>	<DD><B>2. </B>Expand the dialog tree branch and double-click the IDD_ABOUTBOX dialog,	bringing it into the Developer Studio editor.	<P>	<DT></DT>	<DD><B>3. </B>Click the button control on the toolbar.	<P>	<DT></DT>	<DD><B>4. </B>Click and drag the mouse on the window where you want the button to	be placed.	<P>	<DT></DT>	<DD><B>5. </B>Open the properties dialog for the new button, changing the ID and	caption to describe the message to be displayed by the button. Close the properties	dialog.	<P>	<DT></DT>	<DD><B>6. </B>Open the Class Wizard and add a new function for the clicked message	for your new button.	<P>	<DT></DT>	<DD><B>7. </B>Click the Edit Code button in the Class Wizard to take you to the spot	in your code where your new function is.	<P>	<DT></DT>	<DD><B>8. </B>Add the MessageBox function to display a message to the user.	<P>	<DT></DT>	<DD><B>9. </B>Compile and run your application to test your new button.	<P></DL><H2><A NAME="Heading4"></A>Day 2</H2><H3>Quiz</H3><DL>	<DT></DT>	<DD><B>1. </B>Why do you need to specify the tab order of the controls on your application	windows?	<P>	<DT></DT>	<DD>By specifying the tab order of the controls on your application windows, you	can control the order in which the user navigates the application window. If the	user is using the keyboard to navigate around the application window, then the two	primary means of navigating between controls are the tab key and mnemonics that jump	directly to specific controls. The tab order helps provide the user with a consistent	and predictable experience when using your application.	<P>	<DT></DT>	<DD><B>2. </B>How can you include a mnemonic in a static text field that will take	the user to the edit box or combo box beside the text control?	<P>	<DT></DT>	<DD>If you place a mnemonic in a static text control and then make sure that the	static text control is just before the edit control associated with the static text,	the user can select the mnemonic in the static text control to jump directly to the	edit box control.	<P>	<DT></DT>	<DD><B>3. </B>Why do you need to give unique object IDs to the static text fields	in front of the edit box and combo boxes?	<P>	<DT></DT>	<DD>The unique object IDs on the two static text controls were necessary because	you need to manipulate those two controls with the check boxes that enable or disable	and show or hide sets of controls.	<P>	<DT></DT>	<DD><B>4. </B>Why do you need to call the UpdateData function before checking the	value of one of the controls?	<P>	<DT></DT>	<DD>If the user has changed the value of the control on the screen, the UpdateData	function must be called, passing it TRUE as the function argument, to copy the values	from the controls on the window to the variables that are associated with those controls.	If UpdateData is not called, then the values of the variables may not correctly reflect	what the user has changed on the screen.	<P></DL><H3>Exercises</H3><DL>	<DT></DT>	<DD><B>1. </B>Add code to the Default Message button to reset the edit box to say	Enter a message here.	<P>	<DT></DT>	<DD>Using the Class Wizard, add a function to the Default Message button's clicked	event. In this function, add the code in Listing B.1.	<P></DL><H4>LISTING B.1. DAY2DLG.CPP--THE CODE TO PLACE A DEFAULT MESSAGE IN THE EDIT BOX.</H4><PRE> 1: void CDay2Dlg::OnDfltmsg() 2: { 3:     // TODO: Add your control notification handler code here 4:  5:     /////////////////////// 6:     // MY CODE STARTS HERE 7:     /////////////////////// 8:  9:     // Set the message to a default message10:     m_strMessage = &quot;Enter a message here&quot;;11: 12:     // Update the screen13:     UpdateData(FALSE);14: 15:     ///////////////////////16:     // MY CODE ENDS HERE17:     ///////////////////////</PRE><PRE>18: }</PRE><DL>	<DT></DT>	<DD><B>2. </B>Add code to enable or disable and show or hide the controls used to	select and run another application.	<P>	<DT></DT>	<DD>Add functions to the Enable and Show Program Action check boxes. In these functions,	add the code in Listing B.2.	<P></DL><H4>LISTING B.2. DAY2DLG.CPP--THE CODE TO ENABLE OR DISABLE AND SHOW OR HIDE THERUN PROGRAM CONTROLS.</H4><PRE> 1: void CDay2Dlg::OnCkenblpgm() 2: { 3:     // TODO: Add your control notification handler code here 4:  5:     /////////////////////// 6:     // MY CODE STARTS HERE 7:     /////////////////////// 8:  9:     // Get the current values from the screen10:     UpdateData(TRUE);11: 12:     // Is the Enable Program Action check box checked?13:     if (m_bEnablePgm == TRUE)14:     {15:         // Yes, so enable all controls that have anything16:         // to do with running a program17:         GetDlgItem(IDC_PROGTORUN)-&gt;EnableWindow(TRUE);18:         GetDlgItem(IDC_RUNPGM)-&gt;EnableWindow(TRUE);19:         GetDlgItem(IDC_STATICPGM)-&gt;EnableWindow(TRUE);20:     }21:     else22:     {23:         // No, so disable all controls that have anything24:         // to do with running a program25:         GetDlgItem(IDC_PROGTORUN)-&gt;EnableWindow(FALSE);26:         GetDlgItem(IDC_RUNPGM)-&gt;EnableWindow(FALSE);27:         GetDlgItem(IDC_STATICPGM)-&gt;EnableWindow(FALSE);28:     }29: 30:     ///////////////////////31:     // MY CODE ENDS HERE32:     ///////////////////////33: }34: 35: void CDay2Dlg::OnCkshwpgm()36: {37:     // TODO: Add your control notification handler code here38: 39:     ///////////////////////40:     // MY CODE STARTS HERE41:     ///////////////////////42: 43:     // Get the current values from the screen44:     UpdateData(TRUE);45: 46:     // Is the Show Program Action check box checked?47:     if (m_bShowPgm == TRUE)48:     {49:         // Yes, so show all controls that have anything50:         // to do with running a program51:         GetDlgItem(IDC_PROGTORUN)-&gt;ShowWindow(TRUE);52:         GetDlgItem(IDC_RUNPGM)-&gt;ShowWindow(TRUE);53:         GetDlgItem(IDC_STATICPGM)-&gt;ShowWindow(TRUE);54:     }55:     else56:     {57:         // No, so hide all controls that have anything58:         // to do with running a program59:         GetDlgItem(IDC_PROGTORUN)-&gt;ShowWindow(FALSE);60:         GetDlgItem(IDC_RUNPGM)-&gt;ShowWindow(FALSE);61:         GetDlgItem(IDC_STATICPGM)-&gt;ShowWindow(FALSE);62:     }63: 64:     ///////////////////////65:     // MY CODE ENDS HERE66:     ///////////////////////</PRE><PRE>67: }</PRE><DL>	<DT></DT>	<DD><B>3. </B>Extend the code in the OnRunpgm function to allow the user to enter	his own program name to be run.	<P>	<DT></DT>	<DD>Modify the OnRunpgm function as in Listing B.3.	<P></DL><H4>LISTING B.3. DAY2DLG.CPP--THE CODE TO RUN ANY PROGRAM NAME TYPED INTO THE RUNPROGRAM COMBO BOX.</H4><PRE> 1: void CDay2Dlg::OnRunpgm() 2: { 3:     // TODO: Add your control notification handler code here 4:  5:     /////////////////////// 6:     // MY CODE STARTS HERE 7:     /////////////////////// 8:  9:     // Get the current values from the screen10:     UpdateData(TRUE);11: 12:     // Declare a local variable for holding the program name13:     CString strPgmName;14: 15:     // Copy the program name to the local variable16:     strPgmName = m_strProgToRun;17: 18:     // Make the program name all uppercase19:     strPgmName.MakeUpper();20: 21:     // Did the user select to run the Paint program?22:     if (strPgmName == &quot;PAINT&quot;)23:         // Yes, run the Paint program24:         WinExec(&quot;pbrush.exe&quot;, SW_SHOW);25: 26:     // Did the user select to run the Notepad program?27:     if (strPgmName == &quot;NOTEPAD&quot;)28:         // Yes, run the Notepad program29:         WinExec(&quot;notepad.exe&quot;, SW_SHOW);30: 31:     // Did the user select to run the Solitaire program?32:     if (strPgmName == &quot;SOLITAIRE&quot;)33:         // Yes, run the Solitaire program34:         WinExec(&quot;sol.exe&quot;, SW_SHOW);35: 36:         // Run any other program name typed into the combo box37:         if ((strPgmName != &quot;PAINT&quot;) &amp;&amp; (strPgmName != &quot;NOTEPAD&quot;) &amp;&amp;38:             (strPgmName != &quot;SOLITAIRE&quot;))39:               // Yes, run the program typed into the combo box40:               WinExec(strPgmName, SW_SHOW);41: 42:     ///////////////////////43:     // MY CODE ENDS HERE44:     ///////////////////////</PRE><P>45: }</P><P><H2><A NAME="Heading7"></A>Day 3</H2><H3>Quiz</H3><DL>	<DT></DT>	<DD><B>1. </B>What are the possible mouse messages that you can add functions for?	<P>	<DT></DT>	<DD>WM_LBUTTONDOWN, WM_LBUTTONUP, WM_LBUTTONDBLCLK, WM_RBUTTONDOWN, WM _RBUTTONUP,	WM_RBUTTONDBLCLK, WM_MOUSEMOVE, and WM_MOUSEWHEEL.	<P>	<DT></DT>	<DD><B>2. </B>How can you tell if the left mouse button is down on the WM_MOUSEMOVE	event message?	<P>	<DT></DT>	<DD>You can mask the flags passed to the OnMouseMove function with the MK_LBUTTON	flag, as follows:	<P></DL><PRE>((nFlags &amp; MK_LBUTTON) == MK_LBUTTON)</PRE><DL>	<DT></DT>	<DD><B>3. </B>How can you prevent the cursor from changing back to the default cursor	after you set it to a different one?	<P>	<DT></DT>	<DD>Return TRUE in the OnSetCursor event function, preventing the ancestor OnSetCursor	function from being called.	<P></DL><H3>Exercises</H3><DL>	<DT></DT>	<DD><B>1. </B>Modify your drawing program so that the left mouse button can draw	in red and the right mouse button can draw in blue.	<P>	<DT></DT>	<DD>Add a function for the WM_RBUTTONDOWN event message and write the code for it	as in Listing B.4.	<P></DL><H4>LISTING B.4. MOUSEDLG.CPP--THE OnRButtonDown FUNCTION.</H4><PRE> 1: void CMouseDlg::OnRButtonDown(UINT nFlags, CPoint point) 2: { 3:     // TODO: Add your message handler code here and/or call default 4: 5:     /////////////////////// 6:     // MY CODE STARTS HERE 7:     /////////////////////// 8: 9:         // Set the current point as the starting point10:     m_iPrevX = point.x;11:     m_iPrevY = point.y;12:13:     ///////////////////////14:     // MY CODE ENDS HERE15:     ///////////////////////16:17:     CDialog::OnRButtonDown(nFlags, point);</PRE><PRE>18: }</PRE><DL>	<DT></DT>	<DD>Extend the OnMouseMove function as in Listing B.5.	<P></DL><H4>LISTING B.5. MOUSEDLG.CPP--THE MODIFIED OnMouseMove FUNCTION.</H4>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产亚洲1区2区3区| 99视频精品在线| 欧美日韩免费在线视频| 国产精品麻豆99久久久久久| 久久99精品一区二区三区| 欧美精品高清视频| 亚洲图片欧美综合| 欧美性三三影院| 一区二区免费看| 91豆麻精品91久久久久久| 中文字幕在线免费不卡| 成人午夜av电影| 一级日本不卡的影视| 91美女片黄在线观看| 色综合久久中文综合久久牛| 中文字幕一区二区三区av| 99久久精品国产麻豆演员表| 国产精品不卡一区二区三区| 国产91对白在线观看九色| 国产女人aaa级久久久级 | 中文字幕欧美一| 波多野结衣中文字幕一区二区三区 | 国产精品一区二区三区99| 欧美成人欧美edvon| 波多野结衣中文字幕一区| 国产精品视频线看| 色美美综合视频| 日日夜夜精品免费视频| 精品欧美乱码久久久久久 | 国产经典欧美精品| 中国色在线观看另类| 91在线精品一区二区| 亚洲午夜精品网| 精品国产露脸精彩对白| 国产成人鲁色资源国产91色综| 国产精品成人免费| 欧美日韩免费观看一区三区| 久久精品二区亚洲w码| 国产日韩欧美亚洲| 在线观看日产精品| 精品亚洲porn| 一区二区三区波多野结衣在线观看 | 972aa.com艺术欧美| 亚洲国产精品一区二区www在线 | 国产成人免费视频网站| 亚洲欧洲无码一区二区三区| 欧美日韩一区二区三区四区五区| 激情伊人五月天久久综合| 最新日韩av在线| 欧美疯狂做受xxxx富婆| 国产精品18久久久久久久久| 亚洲成人先锋电影| 国产女人aaa级久久久级| 欧美视频自拍偷拍| 国产成a人亚洲| 首页国产欧美日韩丝袜| 国产精品久久久久久久久久久免费看| 91美女片黄在线| 国产精品自拍一区| 日韩国产欧美一区二区三区| 国产精品国产三级国产专播品爱网 | 亚洲一区二区三区四区在线| 久久久精品免费观看| 欧美日韩一区二区在线观看视频| 国产成人精品一区二| 美女视频黄 久久| 一区二区三区.www| 中文字幕亚洲成人| 精品国产第一区二区三区观看体验| 91在线视频官网| 国产成人免费在线观看不卡| 美女脱光内衣内裤视频久久影院| 亚洲精品自拍动漫在线| 伊人夜夜躁av伊人久久| 久久精品亚洲国产奇米99| 欧美久久久久中文字幕| 91老司机福利 在线| 国产成人在线影院| 国内久久婷婷综合| 日韩经典中文字幕一区| 一区二区欧美在线观看| 亚洲女厕所小便bbb| 国产精品人妖ts系列视频| 精品捆绑美女sm三区| 欧美剧在线免费观看网站| 欧美亚洲国产一区二区三区| 99麻豆久久久国产精品免费优播| 国产乱子伦视频一区二区三区| 美脚の诱脚舐め脚责91| 日本不卡一二三区黄网| 免费成人你懂的| 免费成人在线观看| 另类小说一区二区三区| 另类综合日韩欧美亚洲| 激情六月婷婷综合| 国产乱淫av一区二区三区| 国产河南妇女毛片精品久久久| 精品制服美女丁香| 狠狠v欧美v日韩v亚洲ⅴ| 精品一区二区影视| 国产福利一区二区三区在线视频| 国产成人在线电影| 丁香婷婷深情五月亚洲| 成人免费黄色在线| 91蜜桃在线观看| 91美女蜜桃在线| 欧美日韩国产一二三| 欧美一级片在线看| 亚洲精品在线免费播放| 国产欧美精品国产国产专区 | 一区二区三区在线看| 亚洲综合免费观看高清在线观看| 一区二区三区精密机械公司| 五月天国产精品| 美女视频网站久久| 色婷婷精品大在线视频| 色综合咪咪久久| 欧美精品v国产精品v日韩精品| 91精品国产品国语在线不卡| 精品国产露脸精彩对白| 国产欧美视频在线观看| 亚洲免费观看在线视频| 五月开心婷婷久久| 国产精品99久| 日本久久电影网| 欧美人体做爰大胆视频| 久久久.com| 亚洲综合小说图片| 麻豆国产精品视频| av在线一区二区三区| 欧美视频中文字幕| 久久只精品国产| 亚洲乱码国产乱码精品精小说| 日韩在线一区二区| 成人91在线观看| 91精品国产福利在线观看 | 国产精品色呦呦| 亚洲电影中文字幕在线观看| 久久97超碰色| 91啦中文在线观看| 久久久99精品免费观看不卡| 亚洲一卡二卡三卡四卡| 国产成人免费9x9x人网站视频| 欧美日韩一区二区三区四区| 国产三级精品三级在线专区| 亚洲午夜久久久久中文字幕久| 国产麻豆欧美日韩一区| 欧美猛男男办公室激情| 国产精品日产欧美久久久久| 蜜臀久久99精品久久久画质超高清 | 国产一区二三区好的| 日本道免费精品一区二区三区| 日韩精品中午字幕| 午夜精品久久久久久久久久| 成人一二三区视频| 欧美电影免费观看高清完整版| 一区二区三区在线看| 成人久久久精品乱码一区二区三区| 欧美人与性动xxxx| 亚洲激情在线激情| av男人天堂一区| 久久久不卡影院| 免费的成人av| 717成人午夜免费福利电影| 中文字幕一区不卡| 国产99久久久国产精品| 精品av久久707| 日韩精品国产精品| 欧美美女网站色| 亚洲二区视频在线| 欧美在线色视频| 一区二区三区在线视频播放| 成人的网站免费观看| 久久午夜色播影院免费高清| 蜜桃一区二区三区四区| 欧美一区二区免费| 欧美aaaaa成人免费观看视频| 欧美色综合网站| 一区二区久久久久| 91官网在线观看| 一区二区三区四区乱视频| 99热在这里有精品免费| 国产精品国产精品国产专区不蜜 | 日韩国产欧美视频| 欧美精品一二三| 天天av天天翘天天综合网色鬼国产| 在线免费观看视频一区| 综合久久国产九一剧情麻豆| 成人免费黄色在线| 亚洲特黄一级片| 91精品91久久久中77777| 亚洲乱码国产乱码精品精的特点 | 亚洲欧美一区二区不卡| 99精品久久只有精品| 亚洲日本在线天堂| 日本高清不卡在线观看| 亚洲午夜精品网| 欧美一区二区女人| 国产一区二区在线电影| 国产亚洲精品中文字幕|