`
美丽的小岛
  • 浏览: 297510 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

学习PASCAL小记(二)

 
阅读更多

第三个例子,用两视图去显示ini文件的数据。

一看到这个就用了poro类,也顾不了那么多了,把这样一个实体类建立起来,接着就想用了。找了很久没有发现有get/set生成coding的选项,只能自己一个一个属性地去添加它们的方法。当把这个类弄完之后,想起Pascal还有一个数据类型叫做record的没有用,到现在还未用。下一步要考究的课程。

下一步就去让delphi去连接ini文件,然后就是对ini文件的读。这个时候遇到一个TStrings类型,空上类型很有趣的,就像JAVA中的List这个接口一样,不可以创建的。声明ss变量,然后ss := TStringList.Create ;这样去创建对象。

读取ini文件的DAO

unit DAOUnt;

interface

uses

   StaffDM, IniFiles, Classes;

type

  TStaffDAO = class

  private

  var

     Staff : TStaff ;

     IniFile : TIniFile ;

  public

    function GetStaff(FileName,StaffID : string) : TStaff ;

    function GetStaffIDSet(FileName : string):TStrings ;

  end;

implementation

 

function TStaffDAO.GetStaffIDSet(FileName : string):TSTrings;

var

   ss : Tstrings ;

begin

      ss := TStringList.Create ;

      IniFile := TIniFile.Create(FileName) ;

      IniFile.ReadSections(ss);

      IniFile.free ;

      GetStaffIDSet := ss ;

end;

 

function TStaffDAO.GetStaff(FileName, StaffID : string) : TStaff ;

var

   str : string;

begin

  Staff := TStaff.Create() ;

  IniFile := TIniFile.Create(FileName);

  Staff.SetName(IniFile.ReadString(StaffID, 'name', '')) ;

  Staff.SetAge(IniFile.ReadInteger(StaffID, 'age', 0));

  IniFile.Free ;

  GetStaff := Staff ;

end;

end.

创建TiniFile对象,构造函数带上一个文件的路径名。下面显示为ini文件。

[section1]

name=张三

age=26

 [section2]

name=李四

age=26

上面读取ini文件的时候,用了两方法,第一个方法把sections读入到TStrings中,也是上面的ini文件中section1section2等这些字符串。为什么要放入TStrings类型中呢,为什么用这两个东西来封装这样的数据呢?因为这个在显示中很有用,很多控件在数据读取时很喜欢这样的数据类型。例如:CmbBoxDBTComboBox类型,CmbBoxDB.Items := ss ;就可以给空上组合框增加数据了;TreeViewDBTTreeView类型,TreeViewDB.Items.Add(nil,ss.Strings[i]) ;表示显示在树控件上,i表示循环中的i,也就是把TStrings看成一个数组,一个内容读出来的显示在树控件的节点上。

总结到现在,基大方面的知识点已经差不多了,有一个很让人头痛的问题就是内存的释放,创建了一个对象,它不会像JVM那样有一套很好的垃圾回收,你创建了什么对象,也就要释放什么对象。很令人心烦的,经常出错,经常的内存问题。这个必须去注意。

另个一个很有意思的就是工具栏:



 
结构:



 
要加上一个工具栏,先加上一个TCoolBar,然后加上一个TToolbar。下次记得在这个位置,不要错了,也不要浪费时间去找了。

 
我们看到的ToolButton是放在工具栏上面的,还有一个很特别的内容就是,这些Button里面可以加上一些图标。来自哪里?上面的结构有一个对象叫做ImageList1,这个就是存认所有图标的对象,让这个东西与TToolBar类型的一个Images属性,把ImageList1对象关联上去就可以了,在创建Button的时候,就会有一个ImagesIndex属性,选择索引就会快显示图标了。这个内容探索了很久很久。

对于ImageList1对象,加入图标很方便,如下图就可以了,注意格式ico的好。这个控件在上面的win32也能找到。

完了这个控件,还有一个组合框的,有一个小的知识点找了很久,就是设置默认显示,CmbBoxDB.ItemIndex := 0 ;这样设置。

最后,总结一下那个树控件,一个有用的就是找到选择的节点,把这个节点信息显示出来,这个事件是对TTreeView控件写的事件响应该,然后找到这个控件中被选择的树节点。

procedure TMainFrm.TreeViewDBClick(Sender: TObject);

var

    Node : TTreeNode ;

begin

       Node := treeViewDB.Selected ;

       ShowTreeStaff(Node.Text) ;

end;

 

好了,这个例子,就是熟悉vcl控件,还有一个就是对对象的创建与释放是一个很值得注意的问题。

  • 大小: 4.3 KB
  • 大小: 37.3 KB
  • 大小: 28.7 KB
  • 大小: 21.6 KB
分享到:
评论

相关推荐

    pascal的学习必备

    想学pascal的不下白不下,fp还是pascal的最佳选择。

    Pascal精要,学习DELPHI基础的好东西

    Pascal精要.学习PASCAL语言的好文档,尤其想对DELPHI入门的兄弟,非常有好处的

    从浅入深学习pascal编程技术(全27).rar

    从浅入深掌握pascal编程技术.第一节 从浅入深掌握pascal编程技术.第二节 ... ... 从浅入深掌握pascal编程技术.第二十七节

    pascal函数大全

    pascal函数大全pascal函数大全pascal函数大全pascal函数大全pascal函数大全pascal函数大全pascal函数大全pascal函数大全pascal函数大全pascal函数大全pascal函数大全pascal函数大全pascal函数大全pascal函数大全...

    学习Pascal语言教程

    Pascal教程的学习,比较基础,简单,如果想了解,赶紧下载吧!多学一点

    Pascal学习指南

    《Object Pascal Reference (中英文对照)》,原文出自Delphi6,CHM格式,1.6M,完全免费。发布时间:2002年10月10日。

    Pascal教程(初学者)

    网上下载到的Pascal学习资料,与要学习Pascal的同志分享。

    pascal初赛入门准备

    这里整合了pascal初赛所需的所有内容,轻松学习pascal

    Pascal转C++学习笔记——1.基本知识

    Pascal转C++学习笔记——1.基本知识

    Pascal精要_Essential Pascal

    第二章: 编写Pascal代码 第三章: 类型、变量及常量 第四章: 用户自定义数据类型 第五章: 语句 第六章: 过程与函数 第七章: 字符串操作 第八章: 内存 第九章: Windows编程 第十章: Variant类型 第十一章: ...

    Pascal语言小学版

    本书按照全国青少年信息学奥林匹克竞赛要求编写,立足于Free Pascal程序设计语言的普及和应用。

    Pascal语言基础知识学习资料

    Pascal语言基础知识,下载下来好好学习吧,奉献了

    编译原理 Pascal 编译器 Pascal语言实现

    编译原理 Pascal 编译器 Pascal语言实现 编译原理 Pascal 编译器 Pascal语言实现 编译原理 Pascal 编译器 Pascal语言实现 编译原理 Pascal 编译器 Pascal语言实现

    Turbo Pascal 7.0 汉化版 Build 0709

    经典的PASCAL语言编程开发工具,学习PASCAL语言课程必备。 Turbo Pascal 是由Borland公司设计、研制的一种适用于微机的Pascal语言应用开发集成环境。该产品由1983年推出1.0版本发展到1992年推出的7.0版本,功能...

    pascal 精要(pascal 电子书)

    pascal精要很经典的一本介绍pascal的电子书~

    Pascal 教程(pdf完整版)

    Pascal 教程 第一章 简单程序 2 第一节 Pascal 程序结构和基本语句 2 第二节 顺序结构程序与基本数据类型 6 第二章 分支程序 10 第一节 条件语句与复合语句 10 第二节 情况语句与算术标准函数 12 第三章 循环程序...

    pascal学习资料

    以前学习时用的,不过现在不好找了 留作存档吧。

    pascal Script

    这个是Pascal Script控件,能够在运行的时候解释运行

    十个pascal程序

    pascal程序

    Pascal教程合集(入门、Pascal小书、技巧、Pascal中文手册)

    这里小编收集整理的关于Pascal的相关学习资料基本上都在这里额,有了这些基本上入门没问题了,包括Pascal小书、ObjectPascal中文手册等等. 目录 Delphi Object Pascal中英文手册.chm ObjectPascal中文参考手册.pdf ...

Global site tag (gtag.js) - Google Analytics