易截截图软件、单文件、免安装、纯绿色、仅160KB

Delphi双向链表类

unit DvsLinkingClass;
interface
uses
Windows, Messages, SysUtils, Classes, Controls, Forms, Dialogs;
type
PRecLinkNode = ^RecLinkNode;
RecLinkNode = record
NodeMsg: String;
Counter: Integer;
Previous: PRecLinkNode;
Next: PRecLinkNode;
end;
TLinkingClass = class
private
//FNode,LNode:PRecLinkNode;
public
FNode,LNode:PRecLinkNode;
constructor create;
destructor destroy; override;
procedure AddNode(S:String);
procedure DeleteFNode(S:String);
procedure BakupMsg;
end;
implementation
var
LinkingClass: TLinkingClass;
constructor TLinkingClass.create;
begin
inherited;
FNode := nil;
LNode := nil;
end;
procedure TLinkingClass.AddNode(S:String);
var
p:PRecLinkNode;
begin
new(p);
if FNode = nil then
begin
LNode:=FNode;
p.NodeMsg:=S;
p.Next:=FNode;
p.Previous:=FNode;
FNode:=p;
LNode:=p;
end else
begin
LNode.Next:=p;
p.NodeMsg:=S;
p.Next:=nil;
p.Previous:=LNode;
LNode:=p;
end;
end;
procedure TLinkingClass.DeleteFNode(S:String);
var
p:PRecLinkNode;
begin
p := FNode;
begin
FNode := FNode.next;
dispose(p);
end;
end;
destructor TLinkingClass.destroy;
var
p:PRecLinkNode;
begin
//BakupMsg;
while FNode <> nil do
begin
p := FNode;
FNode := FNode.next;
dispose(p);
end;
inherited;
end;
procedure TLinkingClass.BakupMsg;
var
Msg:TStringList;
p:PRecLinkNode;
sSavePath: string;
begin
sSavePath := ExtractFilePath(Application.ExeName)
+ FormatDateTime('YYYYMMDD_HHMMSS', Now) + 'BakMsg' + '.txt';
Msg:=TStringList.Create;
if FNode <> nil then
try
while FNode <> nil do
begin
p := FNode;
Msg.Add(p.NodeMsg);
FNode := FNode.next;
end;
finally
Msg.SaveToFile(sSavePath);
FreeAndNil(Msg);
end;
end;
initialization
LinkingClass := TLinkingClass.create;
finalizati


相关文档:

Delphi Shl与Shr 移位操作介绍

 格式:操作数 Shl/Shr 移动位数
说明:操作数与返回值都是整数
例子:16(10) = 10000(2)
     16(10) Shr 1 = 10000(2) Shr 1 = 1000(2) = 8(10)
     16(10) Shr 2 = 10000(2) Shr 2 = 100(2) = 4(10)
说明:一个整数(I)按位左移一位,相当于把它乘以2,即 I * 2
&n ......

简单的Delphi三层程序开发

 一年前开发了一个MIDAS的程序,最近修改服务端,可是这个服务无法注册,最后终于找到了解决办法,这个相关文章如下:(算是备份吧)
(一)MIDAS是什么?
Delphi中MIDAS到底是什么呢?和他相关组件是什么呢? 
MIDAS(Multitiered Distributed Application Services)多层分布式应用服务。
   Delphi所提出 ......

终于搞定了Delphi的Unicode支持(Tnt控件)

原来是要在FormCreate中加入以下代码:
procedure TTntForm1.TntFormCreate(Sender: TObject);
begin
  //这句很关键.对于平台的支持.
  if Win32Platform = VER_PLATFORM_WIN32_NT then
    Font.Name := 'MS Shell Dlg 2'
  else
    Font.Name := 'MS Shell Dlg';
......

谁说Delphi没有哈希

谁说Delphi没有哈希?--Delphi中,TStringList和THashedStringList的性能对比
曾经看到很多人在嚷嚷Delphi没有哈希表,这些人的动手意识姑且不论,却还有很多人以此来证明Delphi比别的语言垃圾,实在是...
好,牢骚打住,转接正题。
TStringList是我们常用的字符串列表类型,用法就不在这里赘述,但是,在数据其项数增 ......

在Delphi中使用正则表达式

//参考地址:http://www.wangchao.net.cn/bbsdetail_41190.html
一、微软RegExp
      1. 下载并安装最新版的"Microsoft(r) Windows(r) Script"
  2. RegExp包含在vbscript.dll中所以我们必须先注册regsvr32 vbscript.dll
  注(安装了Ie5后默认已经包含该控件)
  3.在Delph ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号