📄 c++ builder 程序设计实用教程 - 2_1 通用按钮组件 - 张晋 - 17xie.htm
字号:
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button1: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '1'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button2: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '2'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button3: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '3'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button4: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '4'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button5: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '5'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button6: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '6'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button7: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '7'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button8: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '8'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button9: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '9'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button10: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '0'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</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>Left</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、</SPAN><SPAN
lang=EN-US>Top</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">、</SPAN><SPAN
lang=EN-US>Width</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和</SPAN><SPAN
lang=EN-US>Height</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>3</SPAN><SPAN
style="FONT-FAMILY: 楷体_GB2312; mso-ascii-font-family: 'Times New Roman'">.运算类</SPAN><SPAN
lang=EN-US>Button</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>Button</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">组件指的是五个分别能够完成加、减、乘、除、输出运算结果的</SPAN><SPAN
lang=EN-US>Button</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">
</SPAN>object Button11: TButton </SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '=' </SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button13: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '+'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button14: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '_'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button15: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '*'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>object Button16: TButton</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Caption = '/'</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>end</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>Button</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">组件相同,操作类</SPAN><SPAN
lang=EN-US>Button</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">组件的属性也只列举了</SPAN><SPAN
lang=EN-US>Caption</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>4</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>temp1</SPAN><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>flag</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>TForm1 *Form1;</SPAN></P>
<P class=a1><SPAN lang=EN-US>int temp1;</SPAN></P>
<P class=a1><SPAN lang=EN-US>float temp2;</SPAN></P>
<P class=a1><SPAN lang=EN-US>int flag;</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>temp1</SPAN><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>flag</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>FormCreate()</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">事件的初始化,在程序设计阶段,用鼠标的左键双击窗体上的空白处,在屏幕上就会弹出一个代码窗口,把光标移动到</SPAN><SPAN
lang=EN-US>FormCreate()</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::FormCreate(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"> </SPAN>Form1->Edit1->Clear();</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN
style="mso-spacerun: yes"> </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"> </SPAN>temp1=0;</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN
style="mso-spacerun: yes"> </SPAN>temp2=0;</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN
style="mso-spacerun: yes"> </SPAN>flag=0;</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN
style="mso-spacerun: yes"> </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>FormCreate()</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">事件中的语句</SPAN><SPAN
lang=EN-US>form1->Edit1->Clear();</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>5</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>Button</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">组件上按下鼠标的左键时,在文本框中就应该能够随时的显示出用户的输入,为了实现这一功能,需要在十个字符类</SPAN><SPAN
lang=EN-US>Button</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::Button1Click(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"> </SPAN>Form1->Edit1->Text=Form1->Edit1->Text+Form1->Button1->Caption;</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN
style="mso-spacerun: yes"> </SPAN>//</SPAN><SPAN
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -