重復操作列表中的字符串
很多情況需要對表中的每壹個字符串進行操作 如改變字符串的大小寫 象這種重復操作可以用 for 循環來實現 同時使用列表的整數類型的索引
以下代碼對列表框的字符串進行重復操作 當用戶按下按鈕時 對列表框中的字符串進行大小寫轉換
procedure TForm Button Click(Sender: TObject); var I: Integer; begin for I := to ListBox Items Count do ListBox Items[I] := UpperCase(ListBox Items[I]); end;
裝載 保存字符串列表
應用程序可以非常方便的把Delphi字符串列表存入文本文件 或者從文本文件中重新裝載(或裝入另壹個不同的列表) 字符串列表有專門的方法處理這類操作
使用LoadFromFile方法從文件中裝載字符串列表 LoadFromFile從文本文件中把每壹行字符串裝入列表中
把列表保存在文件中使用SaveToFile方法 使用時傳遞文件名的參數 如果文件不存在 SaveToFile將創建它 否則將用列表覆蓋現有文件內容
以下代碼裝入AUTOEXEC BAT的文件 並以AUTOEXEC BAK為文件名進行備份
procedure TForm FormCreat(sender:TObject); var FileName:String; begin FileName:= C:\AUTOEXEC BAT ; With Memo do begin LoadFromFile(FileName) SaveToFile(ChangeFileExt(FileName BAK )); end; end; 創建新的字符串列表
大多數情況下 應用程序使用的字符串列表是做為部件的某壹部分 因此不必創建列表 但Delphi允許創建不依賴部件的字符串列表
值得註意的是程序創建的字符串列表必須在使用完之後 釋放列表所占用的內存空間 有兩種不同的情況需要處理 壹是程序以簡單的方式創建 使用 釋放字符串列表 二是由程序創建 在運行期間均可能使用 在程序終止前釋放 這兩種情況主要取決於是創建短期字符串列表還是長期字符串列表
短期字符串列表
短期字符串列表用於處理簡單事物 程序在同壹處創建 使用 釋放列表 這是最安全的使用字符串列表的方法
因為字符串列表要為自己和它的字符串分配內存 所以要用try finally對列表進行保護 以確保發生異常後釋放列表所占用的內存空間
創建短期字符串列表的基本步驟為
構造字符串列表對象
在try finally塊中使用列表
在finally後釋放列表空間
以下代碼創建列表 使用列表 最後釋放列表空間
procedure TForm Button Click(Sender:Tobject); var TemList:TStrings; begin Templist:=TStringList Create; try { use the string list } finally Templist Free; end; end; 長期字符串列表
如果要在程序運行的任何時候使用字符串列表 則需在程序開始運行時就創建列表 並在程序終止前釋放
運行時創建字符串列表的步驟為
在程序主窗體對象的域中加入TStringsList類型的域
在主窗體的OnCreate事件中創建句柄 該事件句柄在主窗體顯示前運行
在創建事件句柄後 創建字符串列表對象
在主窗體的OnDestroy事件創建句柄 該事件句柄在主窗體消失之前運行
這樣 在程序運行過程中 任何過程 事件均能訪問該字符串列表
以下代碼在程序中加入了壹個Clicklist的字符串列表 用戶每按壹次鼠標鍵 程序往Clicklist中加入壹字符串 程序結束前把該列表存入文件
lishixinzhi/Article/program/Delphi/201311/24799