Delphi 2010 新增功能之: IOUtils 单元(2): TDirectory.TFilterPredicate
摘要:TDirectory.GetFiles 函数还有一个 TDirectory.TFilterPredicate 类型的参数, 这是个匿名函数类型, 可对搜索结果再处理.unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtr...
阅读全文
posted @
2009-10-16 18:20
万一
阅读(5379)
推荐(0) 编辑
Delphi 2010 新增功能之: IOUtils 单元(1): 初识 TDirectory.GetFiles
摘要:用 IOUtils 单元下的 TDirectory.GetFiles 获取文件列表太方便了;下面的例子只是 TDirectory.GetFiles 的典型应用...unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrl...
阅读全文
posted @
2009-10-16 17:08
万一
阅读(10637)
推荐(0) 编辑
Delphi 2010 新增功能之: Rtti 单元(5): 获取方法的更多信息
摘要:方法的更多信息是指: 方法类型、返回值、参数等.unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Memo1: TMemo; Button1: TButt...
阅读全文
posted @
2009-10-16 11:32
万一
阅读(4249)
推荐(0) 编辑
Delphi 2010 新增功能之: Rtti 单元(4): TRttiRecordType
摘要:下面以 TPoint 为例, 用 TRttiRecordType 读取了结构的信息.unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Memo1: TMe...
阅读全文
posted @
2009-10-15 22:08
万一
阅读(3944)
推荐(0) 编辑
Delphi 2010 新增功能之: Rtti 单元(3): TRttiOrdinalType
摘要:任何数据类型中 Rtti 中都有对应的获取信息的类, 有序类型对应的是 TRttiOrdinalType.unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm)...
阅读全文
posted @
2009-10-15 21:25
万一
阅读(3756)
推荐(0) 编辑
Delphi 2010 新增功能之: Rtti 单元(2)
摘要:通过 Rtti 还能够调用一个类的方法, 也能读取或设置其属性值.unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); end;
阅读全文
posted @
2009-10-15 17:34
万一
阅读(6259)
推荐(0) 编辑
Delphi 2010 新增功能之: Rtti 单元(1)
摘要:通过 Rtti 单元的 TRttiContext(是个 record), 可以方便地获取类的方法、属性、字段的列表.unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(T...
阅读全文
posted @
2009-10-15 16:23
万一
阅读(10618)
推荐(2) 编辑
Delphi 2010 新增功能之: 软键盘、触摸键盘(TTouchKeyboard)
摘要:本例效果动画图(因不是触摸屏, 只能用鼠标测试一下):代码文件:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Keyboard, TeCanvas;type TForm1 = class(TForm) ...
阅读全文
posted @
2009-10-15 12:21
万一
阅读(10631)
推荐(0) 编辑
关于 class helper for ... 语法
摘要:class helper 可能是从 Delphi 2007 增加的新语法, 因为感觉不太实用, 直到今天才测试了一下.试过之后才知道: 挺有意思的! 基本功能就是修改已存在的类.Txxx = class helper for T... {T... 表示已存在的类} {可以替换已存在的方法} {也可以有新的方法、成员}end;//这之后再使用 T... 类及其子孙类时, 都会优先使用 Txxx ...
阅读全文
posted @
2009-10-13 21:33
万一
阅读(9253)
推荐(0) 编辑
泛型排序器 TComparer
摘要:测试代码文件:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Memo1: TMemo; Memo2: TMemo; Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; Button6: TButton; Button7: TBu
阅读全文
posted @
2009-10-10 16:53
万一
阅读(5219)
推荐(0) 编辑
Delphi 2009 新增的一个小函数: SysUtils.ByteLength
摘要:procedure TForm1.FormCreate(Sender: TObject); var str: string; begin str := '万一'; ShowMessageFmt('%d, %d', [Length(str), ByteLength(str)]); {2,4} end;
阅读全文
posted @
2009-02-12 15:04
万一
阅读(7598)
推荐(1) 编辑
把流中的字符串转换为 UTF 格式 - 回复 "lostapple" 的问题
摘要:问题来源: http://www.cnblogs.com/del/archive/2008/12/26/1269606.html#1414232 本例效果图: 代码文件: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Di...
阅读全文
posted @
2008-12-26 13:53
万一
阅读(6280)
推荐(0) 编辑
Delphi 的运算符重载(2) - 可重载运算符列表
摘要:类别 运算符 运算符标识 使用 转换 隐式转换 Implicit Implicit(a: type): resultType; 显式转换 Explicit Explicit(a: type): resultType; 一元 - Negative Negative(a: type): resultType; ...
阅读全文
posted @
2008-12-09 23:50
万一
阅读(5784)
推荐(0) 编辑
Delphi 的运算符重载(1)
摘要:其实 Delphi 2006 就已经支持运算符重载了, 不过 for Win32 的版本只是在 record 里支持. 运算符重载有什么用处呢? 举个例子: 譬如 "张三"、"李四" 两人一起来拜见你, 你可能会问: "你们两个谁大?" 其实你是在问: "你们两个谁的年龄大?"; 但生活中人们一般都不这么罗嗦. 在程序中能否这样简化呢? 这只能通过 "运算符重载" 做到! 先按 "你们两...
阅读全文
posted @
2008-12-09 23:49
万一
阅读(9394)
推荐(0) 编辑
汉字与多字节编码的转换 - 回复 "不知道" 的问题
摘要:问题来源: http://www.cnblogs.com/del/archive/2008/11/22/1284923.html#1378410 Delphi 2009 默认的编码是多字节编码(MBCS), Delphi 这样表示它: TEncoding.Default. 下面是多字节编码与汉字之间转换的例子: unit Unit1; interface uses Windows, ...
阅读全文
posted @
2008-11-23 12:31
万一
阅读(6249)
推荐(0) 编辑
获取各种编码的识别符
摘要:下面是常用编码的识别符, 在 Delphi(2009) 中如何获取呢? Unicode: FF FE; BigEndianUnicode: FE FF; UTF8: EF BB BF var bs: TBytes; b: Byte; str: string; begin {只有 Unicode、BigEndianUnicode、UTF8 编码有识别符} bs := TEnc...
阅读全文
posted @
2008-11-19 16:42
万一
阅读(8556)
推荐(0) 编辑
使用 png 图片 - 回复 "heyongan" 的问题
摘要:Delphi 2009 有了pngimage、GIFImg 单元, 可以直接使用 png 和 gif 图片了; 如果是设计时给 TImage 装载 png 图片, Delphi 会自动调用 pngimage 单元完成加载, 那动态调用呢? 当然首先要uses pngimage, 然后: unit Unit1; interface uses Windows, Messages, SysUt...
阅读全文
posted @
2008-10-22 11:17
万一
阅读(6163)
推荐(0) 编辑
查看字符串在不同编码(ASCII、Unicode、UTF7、UTF8、Default、BigEndianUnicode)下的 Hex
摘要:本例效果图: 代码文件: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Memo1: TMemo;...
阅读全文
posted @
2008-09-05 10:33
万一
阅读(11922)
推荐(0) 编辑
用 TBytesStream 类实现的读文件为十六进制字符的函数
摘要:本例效果图: 代码文件: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Memo1: TMemo; Memo2...
阅读全文
posted @
2008-09-04 17:28
万一
阅读(6693)
推荐(0) 编辑
Delphi 2009 新增单元 Character[2]: IsLetter、IsUpper、IsLower、IsDigit、IsNumber
摘要:IsLetter: {是否是个字母; 范围 A..Z 与 a..z} IsUpper: {是否是个大写字母; 范围 A..Z} IsLower: {是否是个小写字母; 范围 a..z} IsDigit: {是否是个十进制数字; 范围 0..9} IsNumber: {是否是个数字符号; 范围包括 0..9, 还有 ASCII 码中的 178、179、185、188、189、190 等} ...
阅读全文
posted @
2008-08-28 01:31
万一
阅读(5808)
推荐(0) 编辑