Thursday, January 27, 2011

Membuat TComboBox yang bisa menyimpan id, dan mengaksesnya menggunakan AddObject

donwload source


unit uMain;
interface


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


type
TForm4 = class(TForm)
m: TClientDataSet; {atau bisa TDataset Lain}
mid: TIntegerField;
mNama: TStringField;
cmb: TComboBox;
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;


TData = class
public
id: Integer;
Nama: string;
constructor Create(DataId: Integer; DataNama: string);
end;


var
Form4: TForm4;


implementation


{$R *.dfm}
procedure TForm4.Button1Click(Sender: TObject);
begin
m.AppendRecord([10, 'Ali']);
m.AppendRecord([20, 'Ari']);
m.AppendRecord([30, 'Bayu']);
m.AppendRecord([40, 'Irma']);
m.AppendRecord([50, 'Mulyono']);
m.AppendRecord([60, 'Ridwan']);


m.First;
while not m.Eof do begin
cmb.Items.AddObject(mNama.Value, TData.Create(mid.Value, mNama.Value ));
m.Next;
end;
cmb.ItemIndex:=0;
end;


{ TData }
constructor TData.Create(DataId: Integer; DataNama: string);
begin
Id:= DataId;
Nama:= DataNama;
end;


procedure TForm4.Button2Click(Sender: TObject);
begin
with cmb do
with TData(Items.Objects[ItemIndex]) do
ShowMessage(Format(
'Data Combo Aktif saat ini : ' + #13#10 +
' id = %d' + #13#10 +
' Nama = %s'
,[id, Nama]));
end;


end.

No comments:

Post a Comment