字符串列表及应用(一)

来源:互联网 时间:1970-01-01

 
 Delphi应用程序经常要处理字符串列表,如组合框和列表框中的字符串,TMemo部件的文本行,屏幕支持的字体列表,TNotebook部件的tabs属性,字符串网格的行、列等等。

虽然应用程序以不同的方法使用这些列表,但Delphi通过一个叫字符串列表(Tstrings) 的对象提供统一的界面,并且在不同场合可相互转化。例如,可以在TMemo部件中编辑某一字符串,并把它当成列表框中列表项使用。

Delphi集成开发环境中也经常要使用字符串列表。如在Object Inspector窗体的取值栏中常列有Tstrings字符,双击该字符,将弹出字符列表编辑器,如图3.1,在编辑器中可进行编辑、加入、删除等操作

在运行状态时也可以操作字符串列表,常见的字符串列表操作如下:

● 列表中操作字符串

● 装载、保存字符串列表

● 创建字符串列表

● 在字符串列表中加入对象

本章将介绍字符串列表的常用操作及简单应用。

3.1 字符串列表的常用操作

3.1.1 列表中操作字符串

在Delphi应用程序中,经常要对列表中的字符串进行操作。例如,设计时修改字符串列表属性。

常见的字符串操作如下:

● 计算列表中字符串数目

● 访问指定字符串

● 查找字符串的位置

● 往列表中加入字符串

● 删除列表中的字符串

● 在列表中移动字符串

● 复制一个完整的字符串列表

● 复制列表中的字符串

3.1.1.1 计算列表中的字符串数目

使用Count属性可计算列表中的字符串数目。Count是只读属性,用以指示列表中字符串列表数目。因为字符串列表是以零开始索引,因而Count比列表的最大索引数大一。

例如,应用程序想计算当前屏幕支持的字体数目,可查找屏幕对象的字体列表,该列表包含了屏幕支持的所有字体的名字。

FontCount:=Screen.Fonts.Count;

3.1.1.2 访问指定字符串

字符串列表有一个可索引的Strings属性,可象使用字符串数组一样使用Strings。例如,列表中第一个字符串为Strings[0] 。因为Strings属性为字符串列表中最常用的属性,Strings属性可做为字符串列表的缺省属性,即使用时可省略Strings标识符。

要访问字符串中的指定字符,可查找该字符的起始位置或索引。字符串数目是以零开始记数的。如果列表中有三个字符串,其索引范围为0..2

以下代码是等价的:

Memol.Lines.Strings[0]:='This is the first line.';

                Memol.Lines[0]:='This is the first line.';

3.1.1.3 查找字符串的位置

Indexof方法可查找指定字符串的位置。Indexof有一个字符串类型的参数,方法返回列表中匹配字符串的位置。如果列表中无匹配字符串,将返回- 1。

             Indexof方法只能查找完整字符串,即必须完全匹配整个字符串。如果只匹配部分字符串,必须编写相应代码。

以下代码判定列表中是否有指定字符串:

if FileListBox1.Items.IndexOf('AUTOEXEC.BAT') > -1 then

begin

Color := clYellow;

Label1.Caption := 'You are in the root directory!';

end;

3.1.1.4 在列表中加入字符串

有两种方式往列表中加入字符串:可把字符串加到列表的最后,也可插入列表之中。

要把字符串加至列表尾部,使用Add方法,把字符串作为参数传递。

要把字符串插入列表中,使用Insert


相关阅读:
Top