- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
休息5分钟 实现部分 具体类实现 基础对象介绍 VMT概念 常用控件介绍 基本原则 常用控件介绍 VCL基础对象 TObject TPersistent TComponent TControl TGraphicControl TWinControl TObject 它是VCL中所有类的祖先,只提供最基础服务 对象创建和释放服务 对象信息服务 对象识别服务 对象消息分派服务 TPersistent(对象持久化服务) 作用 提供对象之间相互赋值:assign 读写流的能力:dfm 概念:深拷贝与浅拷贝 区别: obj2 := obj1; obj2.Assign(obj1) ob1 obj2 对象实例2 TComponent 基础组件服务(组件管理) 容器 组件互动通知:notifycation 重要属性 Owner:负责释放 Components:容器 练习:阅读代码,理解容器的管理方式 TControl TControl 重要的界面属性 Align:对齐 Anchors:锚固 Caption Color Popup Menu Font Visible(对应方法:Show/Hide) 练习:按钮控件的所有属性含义 TWinControl(封装Win32控件) 特点 封装了windows窗口创建和消息 拥有Handle(占用Windows资源,用了要还) 可作为其他控件的可视容器(成为其他控件的Parent,注意与Owner的区别) 核心服务:处理Windows消息 Procedure WndProc(var Message: TMessage); override; DefaultHandler(var Message); override; TGraphicControl 特点 没有Handle,没有输入焦点 不可作为其他控件的可视容器 提供Canvas,控件表面用Tcanvas的方法绘制 对象的创建、释放 VCL中对象是需要显式创建和释放的 原则:自己创建、自己释放 创建:o := TXXXX.Create; 释放:o.Free; FreeAndNil(o); 常用法: 对象的创建、释放 构造和析构函数: 析构时注意: 注意: TObjectList:OwnerObject为True,它掌管加入的对象生命周期 接口:通过引用计数控制对象是否释放 VMT表 说明 对于许多面向对象程序语言来说,VMT是一项非常重要的数据结构 不同的Delphi版本实现会有差异 Self的指向 VMT表格内容 如下图 VMT表 虚拟方法指针 VMT表 虚拟方法在VMT中的存储 VMT表 动态方法在VMT中的存储 VMT表 动态方法 VCL中使用了大量的动态方法,如图:TControl类 动态方法在VMT中的存储 如前图 动态方法与虚拟方法的区别 微观 具体类实现 基础对象介绍 VMT概念 常用控件介绍 基本原则 常用控件介绍 基本原则 20\80原则 20%的控件可以解决80%的问题 以下区域内的控件你可能天天打交道 Standard、Win32等等 怎样学习VCL类与控件用法 帮助文档,Demo,互联网 VCL源代码 融会贯通、任意扩展 一样通,样样通 组合,继承 自定义 常用控件 Standard 菜单控件(TPopMenu、TMainMenu) 容器控件(TFrame、TPanel) TEdit、TListBox、TButton、TComboBox TActionlist Win32 TPageControl,TListView,TTreeView DbGo 数据引擎 TADOConnection TADODataSet Additional TSplitter 其它 TBX TRichTreeView 小结 具体类实现 基础对象介绍 VMT概念 常用控件介绍 基本原则 常用控件介绍 作业 目的:掌握常用控件的使用 内容:写一个人员信息管理工具,具体要求见程序 要求 必须完成模块:两种模式查看数据 可选完成模块:编辑及保存(参考程序有点小bug) 代码评价参考(包含但不限于)以下方面: 1、功能实现程度(没有报错) 2、面向对象 3、代码规范 4、界面美观 How Step 1 熟练掌握Pascal语言 学习方法:今天的课程,搜索,论坛,读书,练习 Step 2 实践VCL各种控件 阅读调试VCL相关代码 Step 3 VCL要解决的问题 VCL的框架及设计思想 一本好书 其实不高深 * “ ” “ ” Delphi VCL控件介绍 目的 了解VCL框架 掌握VCL的学习方法 掌握常用控件的使用 主要内容 VCL介绍 消息处
文档评论(0)