📄 c++ builder 程序设计实用教程 - 2_4 文本备忘录组件 - 张晋 - 17xie.htm
字号:
<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>{</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Form1->Memo1->Lines->SaveToFile(Form1->SaveDialog1->FileName);</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>}</SPAN></P>
<P class=a1><SPAN lang=EN-US>}</SPAN></P>
<P class=a1><SPAN
lang=EN-US>//-----------------------------------------------------------------------</SPAN></P>
<H4 style="MARGIN: 6pt 0cm"><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>FontDialog</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">组件和一个</SPAN><SPAN
lang=EN-US>ColorDialog</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>FontDialog</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">组件为例来说明在程序中如何添加响应属性设置按钮事件的代码。在程序的设计阶段,用鼠标的左键双击组件</SPAN><SPAN
lang=EN-US>FontDialog1</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=a1><SPAN lang=EN-US>void __fastcall TForm1::Button3Click(TObject
*Sender)</SPAN></P>
<P class=a1><SPAN lang=EN-US>{</SPAN></P>
<P class=a1><SPAN lang=EN-US>if (Form1->FontDialog1->Execute())</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>{</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">
</SPAN>Form1->Memo1->Font=Form1->FontDialog1->Font;</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>}</SPAN></P>
<P class=a1><SPAN lang=EN-US>}</SPAN></P>
<P class=a1><SPAN
lang=EN-US>//-----------------------------------------------------------------------</SPAN></P>
<P class=MsoNormalIndent><SPAN lang=EN-US><o:p> </o:p></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><SPAN
lang=EN-US>FontDialog</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->FontDialog1->Execute;</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的作用是显示一个对话框,用户可以在其中为</SPAN><SPAN
lang=EN-US>Memo</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->Memo1->Font=Form1->FontDialog1->Font</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">;语句的作用是将用户在“字体”对话框中的选择传送给</SPAN><SPAN
lang=EN-US>Memo</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>2-17</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=242
src="C++ Builder 程序设计实用教程 - 2_4 文本备忘录组件 - 张晋 - 17xie.files/0b91221ced.jpg"
width=312 v:shapes="_x0000_i1030"></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-17<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>
<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>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-18</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=212
src="C++ Builder 程序设计实用教程 - 2_4 文本备忘录组件 - 张晋 - 17xie.files/7e70b3c041.jpg"
width=311 v:shapes="_x0000_i1031"></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-18<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=MsoNormalIndent><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">首先用鼠标的左键单击按钮“打开文件”,在屏幕上就会弹出一个对话框,提示用户选择一个有效的文本文件,单击“打开”按钮,在</SPAN><SPAN
lang=EN-US>Memo</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-19</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=211
src="C++ Builder 程序设计实用教程 - 2_4 文本备忘录组件 - 张晋 - 17xie.files/e208bb8f6a.jpg"
width=309 v:shapes="_x0000_i1032"></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-19<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=MsoNormalIndent><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在程序运行的过程中,用户可以通过单击“颜色设置”按钮和“字体设置”按钮来改变系统的设置,如图</SPAN><SPAN
lang=EN-US>2-20</SPAN><SPAN
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所示为改变了字体和颜色后的效果(注明:字体为小</SPAN><SPAN
lang=EN-US>6</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=211
src="C++ Builder 程序设计实用教程 - 2_4 文本备忘录组件 - 张晋 - 17xie.files/8da46fe56a.jpg"
width=309 v:shapes="_x0000_i1033"></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-20<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=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></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: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; 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 4.0pt 1.0pt 4.0pt"><SPAN
style="FONT-FAMILY: 仿宋_GB2312; mso-ascii-font-family: 'Times New Roman'">程序清单</SPAN></P></DIV>
<P class=a1><SPAN
lang=EN-US>//-----------------------------------------------------------------------</SPAN></P>
<P class=a1><SPAN lang=EN-US>#include <vcl.h></SPAN></P>
<P class=a1><SPAN lang=EN-US>#pragma hdrstop</SPAN></P>
<P class=a1><SPAN lang=EN-US><o:p> </o:p></SPAN></P>
<P class=a1><SPAN lang=EN-US>#include "MemoControl.h"</SPAN></P>
<P class=a1><SPAN
lang=EN-US>//-----------------------------------------------------------------------</SPAN></P>
<P class=a1><SPAN lang=EN-US>#pragma package(smart_init)</SPAN></P>
<P class=a1><SPAN lang=EN-US>#pragma resource "*.dfm"</SPAN></P>
<P class=a1><SPAN lang=EN-US>TForm1 *Form1;</SPAN></P>
<P class=a1><SPAN
lang=EN-US>//-----------------------------------------------------------------------</SPAN></P>
<P class=a1><SPAN lang=EN-US>__fastcall TForm1::TForm1(TComponent*
Owner)</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN
style="mso-spacerun: yes"> </SPAN>:
TForm(Owner)</SPAN></P>
<P class=a1><SPAN lang=EN-US>{</SPAN></P>
<P class=a1><SPAN lang=EN-US>}</SPAN></P>
<P class=a1><SPAN
lang=EN-US>//-----------------------------------------------------------------------</SPAN></P>
<P class=a1><SPAN lang=EN-US><o:p> </o:p></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>Form1->Memo1->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>Form1->OpenDialog1->Title="</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></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>Form1->OpenDialog1->InitialDir="c:\\PWin98";</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>Form1->OpenDialog1->Filter="All
Files(*.*)|*.*|Text Files(*.txt)|*.txt";</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>Form1->OpenDialog1->DefaultExt=String("TXT");</SPAN></P>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -