⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 book_text6.htm

📁 深入编程内幕vc++ 非常适合处学者学习
💻 HTM
📖 第 1 页 / 共 5 页
字号:
            <P class=MsoNormal 
            style="WORD-BREAK: break-all; TEXT-INDENT: 1cm; mso-line-height-alt: 1.3pt; mso-layout-grid-align: none; punctuation-wrap: simple"><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">在</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">MEMBER 
            VARIABLE NAME </SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">一栏当中敲入变量的名字,在</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">CATEGORY</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">列表框当中可以选择变量的类型,<SPAN 
            lang=EN-US>VALUE表示生成一个数据变量,CONTROL类型的变量可以被用来对控件资源进行另一种类型的控制。它的类型依赖于前面选中的控件资源,比方说如果为一个编辑框控件成一个</SPAN></SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">CONTROL</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">类型的成员变量,那么它只能是</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">CEdit</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">类型的。我们将在后面的内容当中具体地介绍如何使用<SPAN 
            lang=EN-US>CONTROL类型的成员变量。</SPAN></SPAN></P>
            <P align=center><SPAN style="mso-ignore: vglayout"><IMG height=301 
            src="book_text6.files/book_t7.jpg" width=366 
            v:shapes="_x0000_s1032"></SPAN><BR><SPAN lang=EN-US 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">图3.7<O:P> 
            </O:P></SPAN></P>
            <P class=MsoNormal 
            style="WORD-BREAK: break-all; TEXT-INDENT: 1cm; mso-line-height-alt: 1.3pt; mso-layout-grid-align: none; punctuation-wrap: simple"><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">生成一个</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">VALUE</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">变量,它的数据类型是字符串。单击</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">OK</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">按钮。这时</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">WIZARD</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">就自动地添加了进行对话框数据交换所有的代码。打开对话框类的头文件和实现文件,我们发现当中增加了一个</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">CString</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">类型的成员变量:<SPAN 
            lang=EN-US><O:P> </O:P></SPAN></SPAN></P><PRE style="WORD-BREAK: break-all; mso-line-height-alt: 1.3pt; mso-layout-grid-align: none; punctuation-wrap: simple"><SPAN lang=EN-US style="BACKGROUND-POSITION: 0% 50%; FONT-SIZE: 10.5pt; BACKGROUND-ATTACHMENT: scroll; BACKGROUND-REPEAT: repeat; FONT-FAMILY: Courier New; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: Times New Roman; mso-shading: white; mso-pattern: gray-15 black">// Dialog Data
</SPAN><SPAN lang=EN-US style="BACKGROUND-POSITION: 0% 50%; FONT-SIZE: 10.5pt; BACKGROUND-ATTACHMENT: scroll; BACKGROUND-REPEAT: repeat; FONT-FAMILY: Courier New; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: Times New Roman; mso-shading: white; mso-pattern: gray-15 black">//{{AFX_DATA(CSongDlg)
</SPAN><SPAN lang=EN-US style="BACKGROUND-POSITION: 0% 50%; FONT-SIZE: 10.5pt; BACKGROUND-ATTACHMENT: scroll; BACKGROUND-REPEAT: repeat; FONT-FAMILY: Courier New; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: Times New Roman; mso-shading: white; mso-pattern: gray-15 black"><SPAN style="mso-tab-count: 1">    </SPAN>enum { IDD = IDD_DIALOG2 };<O:P>
</O:P>

</SPAN><SPAN lang=EN-US style="BACKGROUND-POSITION: 0% 50%; FONT-SIZE: 10.5pt; BACKGROUND-ATTACHMENT: scroll; BACKGROUND-REPEAT: repeat; FONT-FAMILY: Courier New; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: Times New Roman; mso-shading: white; mso-pattern: gray-15 black"><SPAN style="mso-tab-count: 1">    </SPAN>CString<SPAN style="mso-tab-count: 1">    </SPAN>m_songname;
//}}AFX_DATA</SPAN><SPAN style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: MS Sans Serif"> </SPAN></PRE>
            <P 
            style="WORD-BREAK: break-all; mso-line-height-alt: 1.3pt; mso-layout-grid-align: none; punctuation-wrap: simple"><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">&nbsp;&nbsp;&nbsp; 
            并且在建构函数当中对这个变量进行了初始化:<SPAN lang=EN-US><O:P> </O:P></SPAN></SPAN></P><PRE style="WORD-BREAK: break-all; mso-line-height-alt: 1.3pt; mso-layout-grid-align: none; punctuation-wrap: simple"><SPAN lang=EN-US style="BACKGROUND-POSITION: 0% 50%; FONT-SIZE: 10.5pt; BACKGROUND-ATTACHMENT: scroll; BACKGROUND-REPEAT: repeat; FONT-FAMILY: Courier New; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: Times New Roman; mso-shading: white; mso-pattern: gray-15 black">CSongDlg::CSongDlg(CWnd* pParent /*=NULL*/)
  </SPAN><SPAN lang=EN-US style="BACKGROUND-POSITION: 0% 50%; FONT-SIZE: 10.5pt; BACKGROUND-ATTACHMENT: scroll; BACKGROUND-REPEAT: repeat; FONT-FAMILY: Courier New; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: Times New Roman; mso-shading: white; mso-pattern: gray-15 black">:CDialog(CSongDlg::IDD, pParent)<O:P>
</O:P>

{
</SPAN><SPAN lang=EN-US style="BACKGROUND-POSITION: 0% 50%; FONT-SIZE: 10.5pt; BACKGROUND-ATTACHMENT: scroll; BACKGROUND-REPEAT: repeat; FONT-FAMILY: Courier New; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: Times New Roman; mso-shading: white; mso-pattern: gray-15 black"><SPAN style="mso-tab-count: 1">    </SPAN>//{{AFX_DATA_INIT(CSongDlg)
</SPAN><SPAN lang=EN-US style="BACKGROUND-POSITION: 0% 50%; FONT-SIZE: 10.5pt; BACKGROUND-ATTACHMENT: scroll; BACKGROUND-REPEAT: repeat; FONT-FAMILY: Courier New; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: Times New Roman; mso-shading: white; mso-pattern: gray-15 black"><SPAN style="mso-tab-count: 1">    </SPAN>m_songname = _T("");
</SPAN><SPAN lang=EN-US style="BACKGROUND-POSITION: 0% 50%; FONT-SIZE: 10.5pt; BACKGROUND-ATTACHMENT: scroll; BACKGROUND-REPEAT: repeat; FONT-FAMILY: Courier New; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: Times New Roman; mso-shading: white; mso-pattern: gray-15 black"><SPAN style="mso-tab-count: 1">    </SPAN>//}}AFX_DATA_INIT
}</SPAN><SPAN lang=EN-US style="FONT-SIZE: 10.5pt; BACKGROUND: #d9d9d9; FONT-FAMILY: 'Courier New'; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: 'Times New Roman'; mso-shading: white; mso-pattern: gray-15 black"><O:P>
</O:P>
</SPAN></PRE>
            <P 
            style="WORD-BREAK: break-all; mso-line-height-alt: 1.3pt; mso-layout-grid-align: none; punctuation-wrap: simple"><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">&nbsp;&nbsp;&nbsp; 
            在新生成的对话框类<SPAN lang=EN-US>CSongDlg 中有如下一个虚函数:<O:P> 
            </O:P></SPAN></SPAN></P><PRE style="WORD-BREAK: break-all; mso-line-height-alt: 1.3pt; mso-layout-grid-align: none; punctuation-wrap: simple"><SPAN lang=EN-US style="BACKGROUND-POSITION: 0% 50%; FONT-SIZE: 10.5pt; BACKGROUND-ATTACHMENT: scroll; BACKGROUND-REPEAT: repeat; FONT-FAMILY: Courier New; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: Times New Roman; mso-shading: white; mso-pattern: gray-15 black">virtual void DoDataExchange(CDataExchange* pDX);   //DDX/DDV support<O:P>
</O:P>
</SPAN></PRE>
            <P class=MsoNormal 
            style="WORD-BREAK: break-all; TEXT-INDENT: 1cm; mso-line-height-alt: 1.3pt; mso-layout-grid-align: none; punctuation-wrap: simple"><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">DoDataExchange</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">函数就是对话框类和对话框资源进行</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">DDX</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">数据交换的函数。在对话框初始化的时候或者在程序中调用</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">UpdateData()</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">函数的时候,这个函数将会被调用。</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">DDX_TEXT</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">这个函数可以处理多种类型的数据成员变量与控件资源之间的数据交换。这中间包括</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">int,uint,long,DWORD,CString,float,double</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">等。</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">PDX</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">这个参数是一个指向一个</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">CDataExchange</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">对象的指针通过它我们可以设置进行数据交换的方法。比方说:数据交换的方向。这段代码就可以通过</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">PDX</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">的这个标志志判断数据交换的方向是从变量到控件还是从控件到变量,然后进行不同的处理。进行数据交换之后,程序当中就可以通过成员变量来使用用户输入的数据了。</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt"><O:P> 
            </O:P></SPAN></P>
            <P class=MsoNormal 
            style="WORD-BREAK: break-all; TEXT-INDENT: 1cm; mso-line-height-alt: 1.3pt; mso-layout-grid-align: none; punctuation-wrap: simple"><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">对控件资源的另外一种类型的控制就是要操纵界面控件的外观。比方说,我们可以通过生成一个<SPAN 
            lang=EN-US>C</SPAN></SPAN><SPAN lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">ONTROL</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'">类型的成员变量</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">来控制对话框当中的列表控件。和</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">VALUE</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">类型变量的添加方法一样,我们可以使用<SPAN 
            lang=EN-US>C</SPAN></SPAN><SPAN lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">LASSWIZARD</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'; mso-ascii-font-family: 'Times New Roman'">生</SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">成一个</SPAN><SPAN 
            lang=EN-US 
            style="FONT-SIZE: 10.5pt; mso-bidi-font-size: 10.0pt">CListControl 
            </SPAN><SPAN 
            style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'MS Sans Serif'">类型的对象,在</SPAN><SPAN 
            lang=EN-US 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -