4. 把对象与串列表联系起来 串列表除使用Strings属性保存串之外,还可使用Objects属性维护对对象的引用。与Strings相同,Objects也是带有零基准索引的数组。Objects最常见的用途是为属主绘制控件把位图与串联系起来。 使用AddObject或InsertObject方法可一步实现将串及其关联的对象加入列表。IndexOfObject返回列表中第一个与指定对象关联的串的索引。Delete、Clear和Move方法都对串和对象同时进行操作;例如,删除一个串就删除了相应的对象(如果存在)。 为了将对象与现有的串关联,在Objects属性中分配给该对象与串相同的索引。不能只添加对象而不添加相应的串。
2.5.3 Windows注册表和INI文件 Windows系统注册表是一种层次数据库,应用程序可用来存储配置信息。VCL类TRegistry提供读写注册表的方法。 直到Windows95之前,应用程序通常将配置信息存储在扩展名为.INI的初始化文件中。VCL提供下列类帮助维护或移植使用INI文件的程序: · TRegistry处理注册表。 · TIniFile或TMemIniFile处理Windows3.x的INI文件。 · TRegistryIniFile既可处理注册表,也可处理INI文件。除了读写系统注册表外,TRegistryIniFile的属性和方法与TIniFile相类似。通过使用TCustomIniFile(TIniFile、TMemIniFile和TRegistryIniFile共同的祖先)类型的变量,可编写根据不同的调用地点决定是访问注册表或是访问INI文件的通用代码。 1.使用TINIFile INI文件格式仍然被广泛使用,C++Builder配置文件(如DSKDesktop设置文件)也使用了这种格式。因为这种文件格式相当流行,VCL提供了一种类来使读写这些文件变得非常容易。在初始化INIFile对象时,将INI文件名作为参数传入构造函数。如文件不存在,则自动创建一个。然后就可使用ReadString、ReadInteger或ReadBool来随意阅读INI文件。若需阅读整个INI文件,可使用ReadSection方法。同样,可使用WriteBool、WriteInteger或WriteString进行写操作。下例是在窗体构造时从INI文件中读配置信息而在OnClose事件处理程序中写配置信息。

每个Read例程需要三个参数。第一个参数给出INI文件的节;第二个参数给出需读的值;第三个参数是一缺省值,防止该节或值不处于INI文件之中。同样,若节或值不存在,Write例程可创建节和/或值。 下例的代码新创建一个INI文件:

应用程序执行时,在创建窗体时读INI文件窗体并在OnClose事件处理程序中写INI文件。 2.使用TRegistry 大多数32-位应用程序将其信息存储在注册表而不是INI文件中,因为注册表是层次结构,更加合理,并且没有INI文件中的尺寸限制。TRegistry对象包含一些方法来打开、关闭、保存移动、复制和删除键值。下例从注册表输入检索值:

3.使用TRegINIFile 如果你习惯INI文件但要将配置信息改为存储到注册表,可使用TRegINIFile类。TRegINIFile设计为使注册表项看上去像INI文件项。所有的TINIFile的方法(读和写)都存在于TRegINIFile。当构造TRegINIFile对象时,传入的参数(对INIFile对象来说是文件名)成为注册表根部的用户键值,所有节及值都由此分支。实际上,该对象极大地简化了注册表的接口,因此更多信息参见VCL帮助TReyINfile主题。可以根本不用改变现有代码就可用它来代替TRegistry组件。 <  
说明:本教程来源互联网或网友上传或出版商,仅为学习研究或媒体推广,wanshiok.com不保证资料的完整性。
1/2 1 2 下一页 尾页 |