object Form1: TForm1
Left = 192
Top = 107
Width = 356
Height = 474
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object ListBox1: TListBox
Left = 24
Top = 48
Width = 273
Height = 289
ItemHeight = 13
Items.Strings = (
'127.0.0.1,'#19978#32447#26102#38388'7'#65306'21'#65292#27880#37322#65306#21516#23398'A'#65292#32534#21495'001'
'127.0.0.2,'#19978#32447#26102#38388'7'#65306'20'#65292#27880#37322#65306#21516#23398'B'#65292#32534#21495'002'
'127.0.0.3,'#19978#32447#26102#38388'7'#65306'25'#65292#27880#37322#65306#21516#23398'C'#65292#32534#21495'003'
'127.0.0.4,'#19978#32447#26102#38388'7'#65306'11'#65292#27880#37322#65306#21516#23398'D'#65292#32534#21495'004'
'127.0.0.5,'#19978#32447#26102#38388'7'#65306'18'#65292#27880#37322#65306#21516#23398'E'#65292#32534#21495'005'
'127.0.0.6,'#19978#32447#26102#38388'7'#65306'50'#65292#27880#37322#65306#21516#23398'F'#65292#32534#21495'006'
'127.0.0.7,'#19978#32447#26102#38388'7'#65306'10'#65292#27880#37322#65306#21516#23398'G'#65292#32534#21495'007'
'127.0.0.8,'#19978#32447#26102#38388'7'#65306'20'#65292#27880#37322#65306#21516#23398'H'#65292#32534#21495'008'
'127.0.1.1,'#19978#32447#26102#38388'7'#65306'10'#65292#27880#37322#65306#21516#23398'I'#65292#32534#21495'009')
TabOrder = 0
end
object Button1: TButton
Left = 112
Top = 376
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 1
OnClick = Button1Click
end
object Timer1: TTimer
OnTimer = Timer1Timer
Left = 264
Top = 376
end
end
unit Unit1;
interface
uses
Windows, Forms, ExtCtrls, StdCtrls, Classes, Controls;
type
TForm1 = class(TForm)
ListBox1: TListBox;
Button1: TButton;
Timer1: TTimer;
procedure FormCreate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
//生明一个记录来保存数据的已存放时间(time)和更改与否(change)
DataToCount = Record
Time: integer;
Change: boolean;
end;
var
Form1: TForm1;
DataArray: Array of DataToCount;//生明一个动态数组来存放时间记录
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var
i:integer;
begin
SetLength(DataArray,ListBox1.Items.Count);//设置数组长度
For i:=0 to ListBox1.Items.Count-1 do
begin
DataArray.Time:= 0;//将所有的数组记录中的time清零
DataArray.Change:= True;//将所有的数组记录中的change设为True
end;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
var
i:integer;
begin
For i:=0 to ListBox1.Items.Count-1 do
DataArray.Time:=DataArray.Time+1;//时间每过1秒,time就加1
For i:=0 to ListBox1.Items.Count-1 do
if DataArray.Time >= 5 then //如果时间到5秒,就把change设为false
DataArray.Change:= false;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
for i:=0 to ListBox1.Items.Count-1 do
if DataArray.Change = False then //如果Change标志为false,就删去这条记录
ListBox1.Items.Clear;
end;
//因而你每加一个数据(或更新一个数据),都要为它安排一组记录保存(或更改它的原来记录)
//并将记录的time设为0,change设为ture
end.