Tstringlist.Objects ve Addobject kullanımına ornek

Yazdığınız makaleleri ve üyelerimizin işine yarayacağını düşündüğünüz kodlarınızı gönderebilirsiniz. Bu foruma soru sormayın!
Cevapla
Kullanıcı avatarı
kelaynak2
Üye
Mesajlar: 135
Kayıt: 30 Haz 2003 02:18

Tstringlist.Objects ve Addobject kullanımına ornek

Mesaj gönderen kelaynak2 »

Forma bir adet listbox1, bir adet button1, bir adet button2 ekleyin, Önce button 2'ye basarak listboxun içeriğini dolduralım. sonra button1 e basarak neticeyi görebiliriz.
Bu kodla bir Tobject nesnesinin bir prosedüre değişken olarak geçirilmesini de görebilirsiniz. Umarım faydalı olur.

Kod: Tümünü seç

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

  type
   Tbenimobjem = class(TObject)
  public
    InputName : string;
    Value     : double;
    constructor Create;
  end;

type
  TForm1 = class(TForm)
    ListBox1: TListBox;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
    procedure goster(objem:Tbenimobjem);
  public
    { Public declarations }
  end;


var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
for i:=0 to listbox1.Items.Count-1 do
goster(listbox1.Items.Objects[i] as Tbenimobjem);

end;
procedure tform1.goster(objem:Tbenimobjem);
var
s:string;
d:double;
begin
with objem do begin
s:=inputname;
d:=value;
end;
showmessage(s+' Value='+floattostr(d));
end;
constructor Tbenimobjem.Create;
begin
  inherited Create;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
nv:tbenimobjem;
begin
listbox1.Clear;
nv := Tbenimobjem.Create;
 nv.InputName :='birinci';
 nv.Value:=123234;
listbox1.Items.AddObject(nv.InputName,nv);
nv := Tbenimobjem.Create;
 nv.InputName :='ikinci';
 nv.Value:=222222;
listbox1.Items.AddObject(nv.InputName,nv);
nv := Tbenimobjem.Create;
 nv.InputName :='ucuncu';
 nv.Value:=333333;
listbox1.Items.AddObject(nv.InputName,nv);
end;

end.

Cevapla