Delphi TList使用
来源:互联网 发布:文明6 mac下载 编辑:程序博客网 时间:2024/05/01 19:53
关键代码:
TUserStatus = (usOnline, usOffline, usBusy, usLeave); POnlineUser = ^TOnlineUser; TOnlineUser = record Name: string; IP: string; Status: TUserStatus; end; //=== TList ================== { 初始化 } procedure InitOnlineUser; { 清空程序使用的内存 } procedure FinaOnlineUser; { 开辟一个新的PInfo 指针,填入信息并返回指针将在DeleteOnlineUser 或FinaInfo 里释放 } function NewOnlineUser(Name, IP: string; Status: TUserStatus): POnlineUser; procedure EditOnlineUser(aIndex: Integer; Name, IP: string; Status: TUserStatus); procedure AddOnlineUser(Name, IP: string; Status: TUserStatus); procedure DeleteOnlineUser(aIndex: Integer); function OnlineUserExists(Name, IP: string; var aIndex: Integer): Boolean; //=== end ===================var FOnlineUserList: TList;procedure TFormMain.InitOnlineUser;begin FOnlineUserList := TList.Create;end;procedure TFormMain.FinaOnlineUser;var I:Integer;begin for I:=0 to FOnlineUserList.Count-1 do Dispose(POnlineUser(FOnlineUserList.Items[i])); FOnlineUserList.Free;end;{ 开辟一个新的PInfo 指针,填入信息并返回指针将在Command_Delete 或FinaInfo 里释放 }function TFormMain.NewOnlineUser(Name, IP: string; Status: TUserStatus): POnlineUser;var P: POnlineUser;begin New(P); p.Name := Name; p.IP := IP; p.Status := Status; Result := P; { 返回的指针将被保存在List里 }end;procedure TFormMain.EditOnlineUser(aIndex: Integer; Name, IP: string; Status: TUserStatus);var P: POnlineUser;begin if (aIndex<0) or (aIndex>FOnlineUserList.Count) then Exit; P := FOnlineUserList.Items[aIndex]; p.Name := Name; p.IP := IP; p.Status := Status;end;procedure TFormMain.AddOnlineUser(Name, IP: string; Status: TUserStatus);begin FOnlineUserList.Add(NewOnlineUser(Name, IP, Status));end;procedure TFormMain.DeleteOnlineUser(aIndex: Integer);var P: POnlineUser;begin if (aIndex<0) or (aIndex>FOnlineUserList.Count) then Exit; P := FOnlineUserList.Items[aIndex]; FOnlineUserList.Delete(aIndex); Dispose(P);end;function TFormMain.OnlineUserExists(Name, IP: string; var aIndex: Integer): Boolean;var i: Integer;begin Result := False; aIndex := -1; for I := 0 to FOnlineUserList.Count-1 do begin if (POnlineUser(FOnlineUserList.Items[i]).Name=Name) and (POnlineUser(FOnlineUserList.Items[i]).IP=IP) then begin aIndex := i; Result := True; Break; end; end;end;
- Delphi TList使用
- Delphi TList 使用范例
- delphi中Tlist的使用。
- 关于delphi对象存入Tlist中的使用
- TList 使用
- DELPHI中使用Tlist类的补充学习
- Delphi容器类之---TList、TObjectList、TComponentList、TClassList的使用
- Delphi容器类之---TList、TObjectList、TComponentList、TClassList的使用
- Delphi中TList类应用
- TList使用-简例
- Vim Ctags Tlist 使用
- Delphi 小谈之TList 篇
- Delphi 小谈之TList 篇(转)
- Delphi 小谈之TList 篇
- Delphi 小谈之TList 篇(转)
- Tlist
- Tlist
- tlist -
- FCKeditor2.3控件使用指南
- rsyslog配置动态日志文件-outchannel补丁
- hdu 4059
- 触摸屏驱动之滤波函数
- 网页显示高亮代码简易方法
- Delphi TList使用
- rsyslog配置动态日志文件-template补丁
- Android:JNI Local Reference Changes in ICS
- C基础知识--指针类型的常量
- POJ 2823(双端队列)
- sscanf用法
- python2.7.1编码问题
- VMware Linux安装RAC出现Failure at final check of Oracle CRS stack 10的解决
- 【Android】屏幕适配——屏幕规格与分辨率对照表