上一页 1 ··· 180 181 182 183 184 185 186 187 188 ··· 215 下一页
摘要: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Memo1: TMemo; procedure FormCreate... 阅读全文
posted @ 2008-01-22 13:03 万一 阅读(5326) 评论(0) 推荐(0)
摘要: Delphi 的属性太复杂了, 先换换思路, 再继续学习. 程序需要的内存空间分为 heap(堆) 和 stack(栈); heap 是自由存储区, stack 是自动存储区; 使用 heap 需要手动申请、手动释放, stack 是自动申请、自动释放; 使用 heap 时, 如果只申请不释放, 就会发生"内存泄露"; 不需要申请和释放空间的元素, 譬如变量、结构(record)等, 是... 阅读全文
posted @ 2008-01-22 12:00 万一 阅读(7606) 评论(19) 推荐(0)
摘要: 关于属性的话题还有很多, 譬如: 数组属性、默认属性、class 属性等等. 先总结一下前面提到过的属性吧. TMyClass = class(TObject) private FName: string; procedure SetName(const Value: string); published property Name: string read FN... 阅读全文
posted @ 2008-01-18 13:41 万一 阅读(6442) 评论(15) 推荐(0)
摘要: 因为使用方法参数的不同, 所以有了调用约定. 譬如 Delphi 默认的是从左到右读取参数; Window API 是从右到左读取参数. 如果没有调用约定, Delphi 就无法使用由 C 语言编写的 Window API; 如果没有调用约定, 别的语言也无法使用由 Delphi 编写的 DLL 文件中的方法. 指示字 参数读取顺序 参数删除 参数传递 备注 register 左→右... 阅读全文
posted @ 2008-01-18 13:31 万一 阅读(4561) 评论(0) 推荐(0)
摘要: //一个前导示例: {创建一 Win32 工程, 给窗体添加 OnKeyDown 事件} procedure Tbu.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin Self.Text := Char(Key); end; {功能: 在键盘上按一个键, 窗体的标题栏会显示键名} //现在我们... 阅读全文
posted @ 2008-01-17 17:09 万一 阅读(5766) 评论(8) 推荐(0)
摘要: 在方法的类别中, 应该还有一种事件方法; 事件是一种特殊的属性, 使用事件, 就是使用属性; 然后属性再调用事件方法. 到属性里面再深入学习吧. 阅读全文
posted @ 2008-01-17 14:11 万一 阅读(4175) 评论(0) 推荐(0)
摘要: //构造方法就是对象建立时调用的方法; 析构方法就是对象销毁时调用的方法. 如: TMyClass = class(TObject) public constructor Create; {构造方法} destructor Destroy; override; {析构方法} end; {几个要点: 这两个方法都可以追溯到所有类的祖先类 TObject; ... 阅读全文
posted @ 2008-01-17 14:09 万一 阅读(4994) 评论(5) 推荐(1)
摘要: { 抽象类是一定要被继承才可以使用的; 抽象方法是一定要被覆盖才可以使用的. 现在说的是不能被覆盖的方法, 与不能被继承的类. } //譬如: TA = class procedure Proc; virtual; {TA 中的虚方法, 将要被覆盖} end; TB = class(TA) procedure Proc; override; {覆盖} end; TC =... 阅读全文
posted @ 2008-01-17 12:25 万一 阅读(4920) 评论(7) 推荐(0)
摘要: //抽象方法类似与接口; 在没有接口的年代 Delphi 是用抽象方法来模拟接口的; 我想它最终会被接口替代. {下面就定义了两个抽象方法} TMyClass = class(TObject) procedure Proc1; virtual; abstract; {抽象方法首先应该是一个虚方法或动态方法} function Fun: string; dynamic; abs... 阅读全文
posted @ 2008-01-17 00:36 万一 阅读(6120) 评论(3) 推荐(0)
摘要: // inherited 就是调用父类方法的一个特殊命令; 举例: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) But... 阅读全文
posted @ 2008-01-16 21:27 万一 阅读(7106) 评论(5) 推荐(0)
上一页 1 ··· 180 181 182 183 184 185 186 187 188 ··· 215 下一页