上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 215 下一页
摘要: 代码:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, TypInfo, Direct2D;type TForm1 = class(TForm) ListBox1: TListBox; Panel1: TPanel; GroupBox1: TGroupBox; CheckBox1: TCheckBox; Edit1: TEdit; UpDown1: TUpDown; C 阅读全文
posted @ 2011-03-30 23:42 万一 阅读(3552) 评论(1) 推荐(0) 编辑
摘要: 应该是 Delphi 2009 就支持 Direct2D 了,但那时我还用着 WinXP 系统(不支持);现在的测试环境是 Win7+DelphiXE。Direct2D 属 DirectX 家族,是 GDI、GDI+ 的继任者,支持硬件加速,并能与 GDI、GDI+、D3D 交互。其它初步的印象是其文本处理和图像处理分别使用了 DirectWrite 和 WIC 技术,还有支持图层。相关单元是 Direct2D.pas 和 D2D1.pas。Direct2D.pas 中是 Delphi 对 Direct2D 的简单实现,需要其更多功能时还应从 D2D1.pas 中挖掘。Direct2D.pas 阅读全文
posted @ 2011-03-30 11:59 万一 阅读(5866) 评论(2) 推荐(2) 编辑
摘要: uses TypInfo;{以 TAlign 为例}procedure TForm1.Button1Click(Sender: TObject);var enum: TAlign; i: Integer; str: string;begin Memo1.Clear; for enum := Low(TAlign) to High(TAlign) do begin i := ord(enum); //Integer(enum) str := GetEnumName(TypeInfo(TAlign), i); Memo1.Lines.Add(Format('%d : %s', [i 阅读全文
posted @ 2011-03-29 16:39 万一 阅读(3602) 评论(0) 推荐(0) 编辑
摘要: unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Memo1: TMemo; Button1: TButton; procedure Button1Click(Sender: TObject); end;var Form1: TForm1;implementation{$R *.dfm}uses RegularExpressions, msxml;const 阅读全文
posted @ 2011-03-29 13:27 万一 阅读(4862) 评论(3) 推荐(0) 编辑
摘要: TRegExOption = ( roNone, //无 roIgnoreCase, //不区分大小写 roMultiLine, //多行模式; 可使 ^ 和 $ 匹配每个行首或行尾 roExplicitCapture, //只捕获指定了名称或编号的子表达式 roCompiled, //预编译表达式; 这在反复使用更有效率 roSingleLine, //单行模式; 使 . 也可匹配换行符 roIgnorePatternSpace //忽略注释和未经转义的空白);uses RegularExpressions;{roIgnoreCase}procedure TForm1.Button1Clic 阅读全文
posted @ 2011-03-29 10:05 万一 阅读(6006) 评论(4) 推荐(1) 编辑
摘要: unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, RegularExpressions;type TForm1 = class(TForm) Memo1: TMemo; Button1: TButton; procedure Button1Click(Sender: TObject); private function MyMatchEvaluator(const Match: TMatch): string 阅读全文
posted @ 2011-03-28 22:36 万一 阅读(3887) 评论(5) 推荐(1) 编辑
摘要: uses RegularExpressions;const pattern = '([A-Z]+)(\d+)'; //其三个子表达式分别是:[A-Z]+\d+ [A-Z]+ \d+ txt = 'AAA1 BBB2 AA11 BB22 A111 B222 AAAA'; //测试用的目标文本procedure TForm1.Button1Click(Sender: TObject);var match: TMatch; group: TGroup; groups: TGroupCollection;begin match := TRegEx.Match(txt, 阅读全文
posted @ 2011-03-28 21:42 万一 阅读(4659) 评论(0) 推荐(0) 编辑
摘要: 刚刚试了一下 DelphiXE 新增的正则表达式组件, 它基于 C 语言编写的 PCRE 库实现, 感觉设计的非常好。其主要的 TRegEx 被设计为一个结构(而不是类), 可能是基于效率的考虑;不过它主要调用了 TPerlRegEx 类的功能。TRegEx 的五个主要方法 IsMatch()、Match()、Matches()、Replace()、Split() 都有相应的 class 方法,所以一般情况下根本不需要手动实例化对象,直接使用 class 方法就够了。另:关于表达式语法可参加 Perl 5 的相关介绍。uses RegularExpressions; //相关单元const p 阅读全文
posted @ 2011-03-28 20:55 万一 阅读(11008) 评论(4) 推荐(2) 编辑
摘要: 安装包中的 NativeXmlObjectStorage.pas 是 NativeXml 的扩展应用,可以把组件、对象和窗体序列化为 Xml 文件。其中方便使用的是两个类:TsdXmlObjectWriter、TsdXmlObjectReader,也可使用下面三组函数:ComponentCreateFromXmlFile();ComponentCreateFromXmlNode();ComponentCreateFromXmlStream();ComponentCreateFromXmlString();ComponentSaveToXmlFile();ComponentSaveToXmlNo 阅读全文
posted @ 2011-03-25 22:59 万一 阅读(4170) 评论(2) 推荐(0) 编辑
摘要: uses NativeXml; procedure TForm1.Button1Click(Sender: TObject); var xml: TNativeXml; fVal: Double; begin fVal := 123.456789; xml := TNativeXml.CreateName('List'); xml.XmlFormat := xfReadable; //xml.FloatSignificantDigits := ; with xml.Root.NodeNew('item') do begin WriteString('Na 阅读全文
posted @ 2011-03-25 21:21 万一 阅读(2979) 评论(0) 推荐(0) 编辑
上一页 1 ··· 23 24 25 26 27 28 29 30 31 ··· 215 下一页