?? 012.htm
字號:
<font face="宋體" lang="ZH-CN">屬性的值,可將用戶輸入的字符在編輯框中顯示成指定的字符,如</font>"*"<fontface="宋體" lang="ZH-CN">號等。編輯框還可以進行字符選擇操作、粘貼、復制和剪切操作。 </p></font><p>4.3.2 TMemo <font face="宋體" lang="ZH-CN">部件 </p></font><p> TMemo<font face="宋體" lang="ZH-CN">部件與</font>TEdit<fontface="宋體" lang="ZH-CN">部件類似,能向用戶顯示數據,用戶也可輸入數據。與</font>TEdit<font face="宋體" lang="ZH-CN">部件</p><p>不同的是,</font>TMemo<font face="宋體" lang="ZH-CN">部件可以處理多行文本,因此主要用于編輯文件。</p><p> </font>TMemo<font face="宋體" lang="ZH-CN">的</font>Text<font face="宋體"lang="ZH-CN">屬性只能在運行時才能訪問。</font>Modified<font face="宋體"lang="ZH-CN">屬性用以標識</font>Text<font face="宋體" lang="ZH-CN">的數據是否改</p><p>變,通過設置</font>MaxLength<font face="宋體" lang="ZH-CN">屬性值來限制用戶輸入字符的數量。</p><p> 如果把文本當成一個整體進行訪問,可使用</font>Text<fontface="宋體" lang="ZH-CN">屬性;若想逐行訪問,則要使用</font>Lines<fontface="宋體" lang="ZH-CN">屬性。</font>Lines<font face="宋體" lang="ZH-CN">屬性能對文件更方便地進行訪問。</font>Lines<fontface="宋體" lang="ZH-CN">是</font>TStrings<font face="宋體" lang="ZH-CN">類型的,因此可使用</font>Add<font face="宋體" lang="ZH-CN">、</font>Delete<font face="宋體" lang="ZH-CN">方法,例如在</font>Memo1<fontface="宋體" lang="ZH-CN">中加入一行字符串的代碼如下:</font> </p><p>Memo1.Lines.Add('Another line is added'); </p><p><font face="宋體" lang="ZH-CN"> 通過</font>Lines<fontface="宋體" lang="ZH-CN">屬性可以方便地把文件讀入部件中,例程中使用下面的代碼將文件讀入</font>Memo1<fontface="宋體" lang="ZH-CN">: </p></font><p>Memo1.Lines.loadFromFile(Filename). </p><p><font face="宋體" lang="ZH-CN">從</font>TMemo <font face="宋體" lang="ZH-CN">部件中剪切、復制、粘貼文本非常方便,只需使用</font>CutToclipboard <font face="宋體" lang="ZH-CN">,</font>CopyToClipBroad,PasteFromClipBoard<fontface="宋體" lang="ZH-CN">方法,其代碼如下: </p><p> </font>Memo1.CopyToClipboard</p><font face="宋體" lang="ZH-CN"><p> </font>Memo1.CutToClipboard</p><font face="宋體" lang="ZH-CN"><p> </font>Memo1.PasteFromClipboard </p><p> TMemo<font face="宋體" lang="ZH-CN">有一些屬性,用以控制文本的顯示效果。</font>ScrollBars<fontface="宋體" lang="ZH-CN">屬性可以定義部件的水平滾動條和垂直滾動條。當文件字體改變時,使用</font>AutoSize<fontface="宋體" lang="ZH-CN">屬性可使部件大小做相應的調整。設置</font>WordWrap<fontface="宋體" lang="ZH-CN">屬性可以實現自動換行。</p><p> 例程中</font>Edit|WordWrap<font face="宋體" lang="ZH-CN">菜單項提供了設置</font>WordWrap<fontface="宋體" lang="ZH-CN">的功能,并可根據</font>WordWrap<font face="宋體"lang="ZH-CN">的值決定滾動條的形式。當</font>WordWrap<font face="宋體"lang="ZH-CN">為真時,不需要水平滾動條,</font> <font face="宋體"lang="ZH-CN">并在菜單中作出檢查記號。</font></p><p><font face="宋體" lang="ZH-CN">其代碼如下: </p><p> </font>procedure TEditForm.SetWordWrap(Sender: TObject);</p><p>begin</p><p>with Memo1 do</p><p>begin</p><p>WordWrap := not WordWrap;</p><p>if WordWrap then</p><p>ScrollBars := ssVertical else</p><p>ScrollBars := ssBoth;</p><p>WordWrap1.Checked := WordWrap;</p><p>end;</p><p>SetEditRect;</p><p>end; </p><p> TMemo<font face="宋體" lang="ZH-CN">部件提供了一組關于選擇文本的屬性和方法。如果想在部件成為當前控件時自動選擇文本,可設置</font>AutoSelect <font face="宋體" lang="ZH-CN">屬性。運行時可用</font>SelectAll <fontface="宋體" lang="ZH-CN">方法選中部件的全部文本。</font> Selstart<fontface="宋體" lang="ZH-CN">屬性返回選中文本的開始位置,</font>SelText <fontface="宋體" lang="ZH-CN">包含著被選中的文本。</font>SelLength<fontface="宋體" lang="ZH-CN">屬性返回選中文本的長度,這兩個屬性可用于字符串的查找和替換。下一節將詳細討論。</p><p> </font>TMemo<font face="宋體" lang="ZH-CN">的</font>Modified<fontface="宋體" lang="ZH-CN">屬性是一個運行時才能得到的屬性,可判斷部件被創建時或</font>Modified<fontface="宋體" lang="ZH-CN">屬性最后一次設置成假值之后,部件上的文本是否修改。如果修改了,</font>Modified<font face="宋體" lang="ZH-CN">將設成真值,反之假值。</p><p> 例程中在關閉文件時將測試文件的</font>modified<font face="宋體"lang="ZH-CN">屬性,如果文件修改后尚未保存,</font> <font face="宋體"lang="ZH-CN">將出現對話框,詢問用戶是否保存文件,其代碼如下: </p><p> </font> procedure TEditForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);</p><p>var</p><p>DialogValue: Integer;</p><p>FName: string;</p><p>begin</p><p>if Memo1.Modified then</p><p>begin</p><p>FName := Caption;</p><p>DialogValue := MessageDlg(Format(SWarningText, [FName]), mtConfirmation,</p><p>[mbYes, mbNo, mbCancel], 0);</p><p>case DialogValue of</p><p>id_Yes: Save1Click(Self);</p><p>id_Cancel: CanClose := False;</p><p>end;</p><p>end;</p><p>end; </p><p>4.4 <font face="宋體" lang="ZH-CN">常用對話框的使用 </p><p> </font> Delphi<font face="宋體" lang="ZH-CN">的可視部件類庫</font>(VistualComponent Liberty)<font face="宋體" lang="ZH-CN">中,有一組對話框部件,在對象選擇板的</font>Dialog<font face="宋體" lang="ZH-CN">頁面中可以找到。</font> <font face="宋體"lang="ZH-CN">本節著重介紹與文件編輯有關的字體對話框</font>(TFontDialogComponement)<font face="宋體" lang="ZH-CN">,查找對話框</font>(TFindDialogComponement) <font face="宋體" lang="ZH-CN">,替換對話框</font>(TReplace DialogComponement)<font face="宋體" lang="ZH-CN">,文件對開對話框</font>(TOpenDIalogComponement).</p><font face="宋體" lang="ZH-CN"><p> </font> <font face="宋體" lang="ZH-CN">應用這幾個對話框可對文件進行字體設置、查找、替換等操作,但需要編寫相應的代碼。 </p></font><p>4.4.1<font face="宋體" lang="ZH-CN">字體對話框部件 </p><p> 字體對話框部件在應用程序中產生字體對話框,</font> <fontface="宋體" lang="ZH-CN">用戶可在對話框中進行字體選擇和屬性設置。用戶選擇字體并按下</font>OK<fontface="宋體" lang="ZH-CN">按鈕之后,有關信息便貯存在部件的</font>Font<fontface="宋體" lang="ZH-CN">屬性中。</p><p> 應用程序可通過調用字體對話框的</font>Execult<font face="宋體"lang="ZH-CN">方法來顯示對話框,當用戶選擇</font>OK<font face="宋體"lang="ZH-CN">按鈕時,</font>Execult<font face="宋體" lang="ZH-CN">返回</font>True<fontface="宋體" lang="ZH-CN">值,否則返回</font>Flase<font face="宋體" lang="ZH-CN">值。</font></p><p><font face="宋體" lang="ZH-CN">應用程序可以使用</font>Options<fontface="宋體" lang="ZH-CN">屬性來定義字體對話框的顯示和行為方式:例如可在對話框中定義一個幫助按鈕或指定出現在字體列表框中的字體。有關</font>Options<fontface="宋體" lang="ZH-CN">的主要取值如下表</font>4.1<font face="宋體"lang="ZH-CN">: </p></font><p><font face="宋體" lang="ZH-CN">表</font>4.1 <font face="宋體" lang="ZH-CN">字體對話框的</font>Options<fontface="宋體" lang="ZH-CN">取值及含義</font></p><p><font face="宋體" lang="ZH-CN">━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</font></p><p><font face="宋體" lang="ZH-CN">取值 </font> <font face="宋體"lang="ZH-CN"> 含義</font></p><p><font face="宋體" lang="ZH-CN">───────────────────────────────────────</font></p><p>AdAnsiOnly <font face="宋體" lang="ZH-CN">如果是真值,只能使用</font>Window<fontface="宋體" lang="ZH-CN">字符集,</font></p><p>fdEffects <font face="宋體" lang="ZH-CN">如果是真值,對話框中顯示顏色列表和效果檢查框;用戶可使</font></p><p><font face="宋體" lang="ZH-CN">用效果檢查框定義</font>Strikout<fontface="宋體" lang="ZH-CN">下劃線文本;使用顏色列表定義字體</font></p><p><font face="宋體" lang="ZH-CN">顏色。</font></p><p>fdForceFontExise <font face="宋體" lang="ZH-CN"> 如果是真值,用戶在字體組合框中輸入字體名后選擇</font>OK<fontface="宋體" lang="ZH-CN">按鈕,</font></p><p><font face="宋體" lang="ZH-CN">將出現一個用戶字體無效的消息框。</font></p><p>fdNoOEMFont<font face="宋體" lang="ZH-CN"> </font> <font face="宋體"lang="ZH-CN">如果是真值,字體組合框中將不顯示向量字體。</font></p><p>fdShowHelp <font face="宋體" lang="ZH-CN">如果是真值,對話框顯示</font>Help<fontface="宋體" lang="ZH-CN">按按鈕。</font></p><p>fdWysiwyg <font face="宋體" lang="ZH-CN">如果是真值,</font> <fontface="宋體" lang="ZH-CN">只有打印和屏幕均可得到的字體才會出現在字體</p><p> </font> <font face="宋體" lang="ZH-CN">組合框中。</font></p><p><font face="宋體" lang="ZH-CN">━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</p><p> </p><p> 例程中</font>(Edit/Font)<font face="宋體" lang="ZH-CN">菜單具有設置文本字體的功能,其代碼如下:</p><p> </p><p> </font>procedure TEditForm.SetFont(Sender : TObject);</p><p>begin</p><p>FontDialog.Font := Memo1.Font;</p><p>if FontDialog1.Execult then</p><p>Memo1.Fout := FontDialog1.Font;</p><p>SetEdit Rect;</p><p>end;<font face="宋體" lang="ZH-CN"> </font></p><hr width="94%"></TD><TD CLASS="tt3" VALIGN="bottom" width="8%" ><strong><A HREF="013.htm"><FONT style="FONT-SIZE: 9pt">后一頁</font></A><BR><A HREF="011.htm"><FONT style="FONT-SIZE: 9pt">前一頁</font></A><BR><A HREF="index.html"><FONT style="FONT-SIZE: 9pt">回目錄</font></A><BR></strong></TD></TR></table></BODY></HTML>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -