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

📄 c++ builder 程序设计实用教程 - 2_4 文本备忘录组件 - 张晋 - 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></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></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-&gt;Memo1-&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>Form1-&gt;OpenDialog1-&gt;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-&gt;OpenDialog1-&gt;InitialDir="c:\\Windows";</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-&gt;OpenDialog1-&gt;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-&gt;OpenDialog1-&gt;DefaultExt=String("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-&gt;SaveDialog1-&gt;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-&gt;SaveDialog1-&gt;InitialDir="c:\\Windows";</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-&gt;SaveDialog1-&gt;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-&gt;SaveDialog1-&gt;DefaultExt=String("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-&gt;Button2-&gt;Enabled=false;</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-&gt;FontDialog1-&gt;Font=Form1-&gt;Memo1-&gt;Font;</SPAN></P>
<P class=a1><SPAN 
lang=EN-US>Form1-&gt;ColorDialog1-&gt;Color=Form1-&gt;Memo1-&gt;Color;</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=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></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>Form1-&gt;Button2-&gt;Enabled=false;</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>OpenDialog</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-&gt;OpenDialog1-&gt;InitialDir:='c:\\windows'</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">;来设置组件所显示对话框的缺省路径为</SPAN><SPAN 
lang=EN-US>c:\windows</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>'All Files(*.*)|*.*|Text Files(*.txt)|*.txt'</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">,这也就意味着,在程序运行的过程中,“打开”对话框显示的文件只有两种选择——要么显示所有的文件,要么只显示以</SPAN><SPAN 
lang=EN-US>*.txt</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>OpenDialog</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">组件的初始化相同,</SPAN><SPAN 
lang=EN-US>SaveDialog</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 
lang=EN-US>form1-&gt;SaveDialog1-&gt;InitialDir:='c:\\windows;</SPAN></P>
<P class=MsoNormalIndent><SPAN lang=EN-US>form1-&gt;SaveDialog1-&gt;Filter:='All 
Files(*.*)|*.*|Text Files(*.txt)|*.txt;</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">它们的功能在</SPAN><SPAN 
lang=EN-US>OpenDialog</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></P>
<P class=a1><SPAN 
lang=EN-US>Form1-&gt;FontDialog1-&gt;Font=Form1-&gt;Memo1-&gt;Font;</SPAN></P>
<P class=a1><SPAN 
lang=EN-US>Form1-&gt;ColorDialog1-&gt;Color=Form1-&gt;Memo1-&gt;Color;</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></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>3</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>2-15</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所示代码窗口的左侧子窗口中选择</SPAN><SPAN 
lang=EN-US>Tform1/Published/Button1Click</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=a style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US><IMG height=189 
src="C++ Builder 程序设计实用教程 - 2_4 文本备忘录组件 - 张晋 - 17xie.files/ca0e3862a1.jpg" 
width=252 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-15<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=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>if (Form1-&gt;OpenDialog1-&gt;Execute())</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&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; 
</SPAN>{</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&nbsp;&nbsp; 
</SPAN>Form1-&gt;Memo1-&gt;Lines-&gt;LoadFromFile(Form1-&gt;OpenDialog1-&gt;FileName);</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&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; 
</SPAN>Form1-&gt;Button2-&gt;Enabled=true;</SPAN></P>
<P class=a1><SPAN lang=EN-US><SPAN style="mso-spacerun: yes">&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; 
</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 
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>Form1-&gt;OpenDialog1-&gt;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>Form1-&gt;Memo1-&gt;Lines-&gt;LoadFromFile(Form1-&gt;OpenDialog1-&gt;Filename)</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>Form1-&gt;Button2-&gt;Enabled=true;</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-16</SPAN><SPAN 
style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">所示。</SPAN></P>
<P class=a style="MARGIN: 0cm 0cm 0pt"><SPAN lang=EN-US><IMG height=153 
src="C++ Builder 程序设计实用教程 - 2_4 文本备忘录组件 - 张晋 - 17xie.files/118615e388.jpg" 
width=297 v:shapes="_x0000_i1029"></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-16<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=a1><SPAN lang=EN-US>void __fastcall TForm1::Button2Click(TObject 
*Sender)</SPAN></P>
<P class=a1><SPAN lang=EN-US>{</SPAN></P>
<P class=a1><SPAN lang=EN-US>if (Form1-&gt;SaveDialog1-&gt;Execute())</SPAN></P>

⌨️ 快捷键说明

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