Arkadaşlar delphide kullanıcı listesi array oluşturmak istiyorum.Array oluşturulduktan sonra örneğin
Liste[0].username=test;
Liste[0].sifre=test;
Liste[0].ip=test;
Liste[1].username=ads;
Liste[1].sifre=ads;
Liste[1].ip=ads;
gibi liste oluşsun istiyorum.bu liste oluştuktan sonra istediğim an bu bilgileri kullanmak istiyorum.Yani listview gibi diyebiliriz.Bununla ilgili kod örneği olan varmı??
Kullanıcı Listesi Bilgileri
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
örnek yok ama şu şekilde yardımcı olabilirim. öncellikle record tipinde yapıyı tanımla daha sonra array türünde yukarıdaki tipte bir değişken tanımla.
yukarıdaki gibi olacak. yazım hataları oabilir. Kolay gelsin.
Kod: Tümünü seç
kayit=record
username:string[25];
ip:string[11];
...
end;
var
Liste:array of kayittipi;
- sadettinpolat
- Moderator
- Mesajlar: 2131
- Kayıt: 07 Ara 2003 02:51
- Konum: Ankara
- İletişim:
Kod: Tümünü seç
unit UnitUsers;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
Const ItemCount=10;
type
TUserInfo = Class
private
FUserName: String;
FPassword: String;
FUserIP: String;
procedure SetUserName(const Value: String);
procedure SetPassword(const Value: String);
procedure SetUserIP(const Value: String);
public
property UserName:String read FUserName write SetUserName;
property Password:String read FPassword write SetPassword;
property UserIP:String read FUserIP write SetUserIP;
end;
TUsers = class
private
fUsers:array[0..ItemCount-1] of TUserInfo;
function GetUsers(Index: Integer): TUserInfo;
procedure SetUsers(Index: Integer; const Value: TUserInfo);
public
destructor Destroy;override;
property Users[Index: Integer]: TUserInfo read GetUsers write SetUsers;
end;
implementation
{ TRectangle }
destructor TUsers.Destroy;
var
i:byte;
begin
for i :=0 to ItemCount-1 do
FreeAndNil(fUsers[i]);
inherited Create;
end;
function TUsers.GetUsers(Index: Integer): TUserInfo;
begin
if (Index < 0) or (Index > itemCount-1) then
raise Exception.Create('Sınır aşıldı');
if Assigned(fusers[Index]) then
Result := fusers[Index]
else
raise Exception.Create('Nesne oluşturulmamış');
end;
{ TUserInfo }
procedure TUserInfo.SetPassword(const Value: String);
begin
FPassword := Value;
end;
procedure TUserInfo.SetUserIP(const Value: String);
begin
FUserIP := Value;
end;
procedure TUserInfo.SetUserName(const Value: String);
begin
FUserName := Value;
end;
procedure TUsers.SetUsers(Index: Integer; const Value: TUserInfo);
begin
if (Index < 0) or (Index > itemCount-1) then
raise Exception.Create('Sınır aşıldı');
if Assigned(fUsers[Index]) then
FreeAndNil(fUsers[Index]);
fUsers[Index] := Value;
end;
end.
bu uniti aşağıdaki gibi kullanabilrsin.
Kod: Tümünü seç
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,UnitUsers;
Kod: Tümünü seç
private
{ Private declarations }
public
Users1:TUsers;
Kod: Tümünü seç
procedure TForm1.FormCreate(Sender: TObject);
begin
Users1:=TUsers.Create;
users1.Users[0] := TUserInfo.Create;
users1.Users[0].UserName := 'a';
users1.Users[1]:=TUserInfo.Create;
users1.Users[1].UserName := 'b';
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(users1.Users[0].UserName);
end;