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

📄 c++ builder 程序设计实用教程 - 2_1 通用按钮组件 - 张晋 - 17xie.htm

📁 已经消失的不易找到的C++ builder网络教程总结
💻 HTM
📖 第 1 页 / 共 5 页
字号:
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">单击</SPAN><SPAN 
lang=EN-US>1</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">按钮</SPAN></P>
<P class=a1><SPAN lang=EN-US>}</SPAN></P>
<P class=a1><SPAN lang=EN-US>………<SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN>//</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">略去</SPAN></P>
<P class=a1><SPAN lang=EN-US>void __fastcall TForm1::Button10Click(TObject 
*Sender)</SPAN></P>
<P class=a1><SPAN lang=EN-US>{</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;</SPAN>Form1-&gt;Edit1-&gt;Text=Form1-&gt;Edit1-&gt;Text+Form1-&gt;Button10-&gt;Caption;</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;</SPAN>//</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">单击</SPAN><SPAN 
lang=EN-US>0</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">按钮</SPAN></P>
<P class=a1><SPAN lang=EN-US>}</SPAN></P>
<P class=MsoNormalIndent><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">由于篇幅的关系,在这里仅仅列举了字符类组件</SPAN><SPAN 
lang=EN-US>Button1</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和</SPAN><SPAN 
lang=EN-US>Button10</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的事件响应代码,其它几个组件的响应代码请读者参见附后的源程序代码。</SPAN></P>
<H4><SPAN lang=EN-US>6</SPAN><SPAN 
style="FONT-FAMILY: 楷体_GB2312; mso-ascii-font-family: 'Times New Roman'">.运算符响应</SPAN></H4>
<P class=MsoNormalIndent><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在本示例程序中,共有四种运算符——“</SPAN><SPAN 
lang=EN-US>+</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、</SPAN><SPAN 
lang=EN-US>-</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、</SPAN><SPAN 
lang=EN-US>*</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、</SPAN><SPAN 
lang=EN-US>/</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">”,在程序运行的过程中,单击这四个运算符,就可以实现相应的加减乘除运算,下面以加法运算为例来说明在程序中如何实现简单的数学运算。</SPAN></P>
<P class=a1><SPAN lang=EN-US>void __fastcall TForm1::Button13Click(TObject 
*Sender)</SPAN></P>
<P class=a1><SPAN lang=EN-US>{</SPAN></P>
<P class=a1><SPAN lang=EN-US>flag=1;</SPAN></P>
<P class=a1><SPAN lang=EN-US>//</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">设置加法标志</SPAN></P>
<P class=a1><SPAN 
lang=EN-US>temp1=StrToInt(Form1-&gt;Edit1-&gt;Text);</SPAN></P>
<P class=a1><SPAN lang=EN-US>//</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">为变量</SPAN><SPAN 
lang=EN-US>temp1</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">赋值</SPAN></P>
<P class=a1><SPAN lang=EN-US>Form1-&gt;Edit1-&gt;Clear();</SPAN></P>
<P class=a1><SPAN lang=EN-US>//</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">清空文本框</SPAN></P>
<P class=a1><SPAN lang=EN-US>}</SPAN></P>
<P class=MsoNormalIndent><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">如果用户在程序运行的过程中,用鼠标的左键单击“</SPAN><SPAN 
lang=EN-US>+</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">”,程序首先会设置标志变量</SPAN><SPAN 
lang=EN-US>flag</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的值为</SPAN><SPAN 
lang=EN-US>1</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">,也就表示程序将要进行的数学运算为加法运算,然后通过语句</SPAN><SPAN 
lang=EN-US>temp1=StrToInt(Form1-&gt;Edit1-&gt;Text);</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">把当前文本框中的数据存储在临时变量</SPAN><SPAN 
lang=EN-US>temp1</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中,最后清空文本框。</SPAN></P>
<P class=MsoNormalIndent><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">其它几个运算符的代码实现过程请读者参看附后的源程序。</SPAN></P>
<H4><SPAN lang=EN-US>7</SPAN><SPAN 
style="FONT-FAMILY: 楷体_GB2312; mso-ascii-font-family: 'Times New Roman'">.输出运算结果</SPAN></H4>
<P class=MsoNormalIndent><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">最后程序运算的结果要输出到文本框中,但是其中的一个难点就在于如何判断用户所选择的算法类型,在本程序中,标志变量</SPAN><SPAN 
lang=EN-US>flag</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中存储着用户的选择类型,所以在“</SPAN><SPAN 
lang=EN-US>=</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">”按钮的响应代码中通过一个选择语句来得到程序的运算结果:</SPAN></P>
<P class=a1><SPAN lang=EN-US>void __fastcall TForm1::Button11Click(TObject 
*Sender)</SPAN></P>
<P class=a1><SPAN lang=EN-US>{</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;</SPAN>switch 
(flag)</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;</SPAN>{</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>case 1: 
temp2=StrToFloat(Edit1-&gt;Text)+StrToFloat(temp1);</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN>//</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">进行加法运算</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN>break;</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>case 2: 
temp2=StrToFloat(temp1)-StrToFloat(Edit1-&gt;Text);</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN>//</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">进行减法运算</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN>break;</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp; </SPAN><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;</SPAN>case 3: 
temp2=StrToFloat(Edit1-&gt;Text)*StrToFloat(temp1);</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN>//</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">进行乘法运算</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN>break;</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp; </SPAN>case 4: 
temp2=StrToFloat(temp1)/StrToFloat(Edit1-&gt;Text);</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
</SPAN>//</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">进行除法运算</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;</SPAN>}</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;</SPAN>Edit1-&gt;Text=FloatToStr(temp2);</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN 
style="mso-spacerun: yes">&nbsp;</SPAN>//</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">显示运算结果</SPAN></P>
<P class=a1><SPAN lang=EN-US>}</SPAN></P>
<P class=MsoNormalIndent><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">值得注意的是,临时变量</SPAN><SPAN 
lang=EN-US>temp2</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中存储的程序运算结果为</SPAN><SPAN 
lang=EN-US>Float</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">类型,而文本框的输出类型为</SPAN><SPAN 
lang=EN-US>String</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">类型,所以在程序中要调用一个</SPAN><SPAN 
lang=EN-US>floattostr()</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">函数进行数据类型的转换,最后通过语句</SPAN><SPAN 
lang=EN-US>edit1-&gt;Text=FloatToStr(temp2) ;</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">来输出程序的运算结果。</SPAN></P>
<H4><SPAN lang=EN-US>8</SPAN><SPAN 
style="FONT-FAMILY: 楷体_GB2312; mso-ascii-font-family: 'Times New Roman'">.运行程序</SPAN></H4>
<P class=MsoNormalIndent><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">按照附后的源程序,添加剩余的程序代码后,选择菜单</SPAN><SPAN 
lang=EN-US>File</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中的</SPAN><SPAN 
lang=EN-US>Save All</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">选项,在弹出的对话框中选择合适的文件名保存文件,然后按键盘上的功能键</SPAN><SPAN 
lang=EN-US>F9</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">运行程序,程序运行的初始画面如图</SPAN><SPAN 
lang=EN-US>2-3</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所示。</SPAN></P>
<P class=a><SPAN lang=EN-US><IMG height=210 
src="C++ Builder 程序设计实用教程 - 2_1 通用按钮组件 - 张晋 - 17xie.files/4c5736884e.jpg" 
width=256 v:shapes="_x0000_i1027"></SPAN></P>
<P class=MsoCaption><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">图</SPAN><SPAN 
lang=EN-US>2-3<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序运行的初始画面</SPAN></P>
<P class=MsoNormalIndent><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在程序运行的过程中,用鼠标单击窗体上的数字按钮,输入数据</SPAN><SPAN 
lang=EN-US>520</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">,然后单击运算符“</SPAN><SPAN 
lang=EN-US>*</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">”,再次输入数据</SPAN><SPAN 
lang=EN-US>1314</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">,单击“</SPAN><SPAN 
lang=EN-US>=</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">”,程序运行结果如图</SPAN><SPAN 
lang=EN-US>2-4</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所示。</SPAN></P>
<P class=a><SPAN lang=EN-US><IMG height=217 
src="C++ Builder 程序设计实用教程 - 2_1 通用按钮组件 - 张晋 - 17xie.files/9fe281ce07.jpg" 
width=265 v:shapes="_x0000_i1028"></SPAN></P>
<P class=MsoCaption><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">图</SPAN><SPAN 
lang=EN-US>2-4<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序运算的结果</SPAN></P>
<P class=MsoNormalIndent><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在这个示例应用程序中,不但可以实现加法运算,还可以实现减法、乘法和除法的运算。而单击“清零”按钮,就可以清除文本框中所有输入的数据,重新开始计算。</SPAN></P>
<P class=MsoNormalIndent><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">程序完整的源代码如下所示:</SPAN></P>
<DIV 
style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 0cm; PADDING-BOTTOM: 1pt; BORDER-LEFT: windowtext 1pt solid; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-border-alt: solid windowtext .5pt; mso-element: para-border-div">
<P class=a0 
style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0cm; BORDER-TOP: medium none; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; PADDING-TOP: 0cm; BORDER-BOTTOM: medium none; mso-border-alt: solid windowtext .5pt; mso-padding-alt: 1.0pt 0cm 1.0pt 0cm"><SPAN 

⌨️ 快捷键说明

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