Melanjutkan pelajaran sebelumnya, kali ini kita akan membuat frmanggota yaitu dengan cara:
1. Mengaktifkan Delphi 7.0 dengan cara, klik Start, Klik All Program, Klik Borland Delphi 7, Klik Delphi 7.
2. Klik menu File, klik Open Project, tentukan folder tempat anda menyimpan project pustakaPrj, lalu klik pustakaPrj.dpr dan klik open
3. Klik Menu file, Klik New, klik form, ganti caption pada properties dengan Daftar Anggota, dan pada name ketikkan frmanggota.
4. Klik menu View, lalu klik forms dan double klik mainmenu1, klik file pada mainmenu1, klik anggota dan ketikkan :
frmanggota.show;
catatan : Jangan lupa untuk mengikutsertakan anggotaU.pas ke dalam pustakaPrj.dpr yaitu dengan
uses anggotau.pas
5. Klik menu View, lalu klik forms dan double klik frmanggota, lengkapi form tersebut seperti gambar berikut :
Catatan :
Palette standard : Label, Button, Panel
Palette win32 : DateTimePicker, PageControl (Untuk 2 muka tampilan Baris dan tabel)
Pallete Additional : SpeedButton (maju mundur record)
Pallete Data controls : DBGrid, DBEdit, DBImage(untuk Foto)
Pallete ADO : Ado Connection, ADOTable,
Pallete DataAcces : DataSource
Pallete Dialog : OpenPictureDialog
Setting datasource untuk masing
masing object database adalah ke datasorce1, sedangkan untuk datafield dbedit dan
DBImage
masing-masing sesuai dengan field di tabel penerbit.
Yang baru dalam
frmanggota ini adalah mengakses file gambar *.bmp untuk direkam dalam filed
foto dan ditampilkan dalam DBImage. Adapun kode untuk mengambil file adalah
sebagai berikut:
procedure
TfrmAnggota.Button1Click(Sender: TObject);
var
BlobField : TBlobField;
begin
with topenpicturedialog.Create(nil) do
try
InitialDir := '.';
if Execute then
begin
if ADOTable1.State in [dsbrowse] then
ADOTable1.Edit;
BlobField := ADOTable1.FieldByName('Foto')
as TBlobField;
BlobField.LoadFromFile(filename);
end;
finally
Free;
end;
end;
Dan
untuk kode menghapus foto adalah:
procedure
TfrmAnggota.Button2Click(Sender: TObject);
begin
if ADOTable1.State in [dsbrowse] then
ADOTable1.Edit;
TBlobField(ADOTable1.FieldByName('Foto')).Clear;
end;
catatan : komponen DBImage hanya bisa mengakses file gambar dalam
format *.bmp, *.ico, *.emf dan *.wmf
Untuk kode-kode operasi database dan form
yang lain sama dengan latihan sebelumnya, hanya diganti parameter databasenya
saja. Kode selengkapnya untuk frmAnggota adalah sbb:
unit AnggotaU;
interface
uses
Windows, Messages, SysUtils, Variants,
Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, ExtCtrls,
DBCtrls, Grids, DBGrids, Mask,
Buttons, DB, ADODB, ExtDlgs;
type
TfrmAnggota = class(TForm)
Panel1: TPanel;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
DBEdit4: TDBEdit;
DBEdit3: TDBEdit;
DBEdit2: TDBEdit;
DBEdit1: TDBEdit;
DBGrid1: TDBGrid;
DBImage1: TDBImage;
Button1: TButton;
Button2: TButton;
DateTimePicker1: TDateTimePicker;
DataSource1: TDataSource;
ADOConnection1: TADOConnection;
ADOTable1: TADOTable;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBEdit8: TDBEdit;
DBEdit9: TDBEdit;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
OpenPictureDialog1: TOpenPictureDialog;
procedure DateTimePicker1Change(Sender:
TObject);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure SpeedButton1Click(Sender:
TObject);
procedure SpeedButton2Click(Sender:
TObject);
procedure SpeedButton3Click(Sender:
TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmAnggota: TfrmAnggota;
implementation
{$R *.dfm}
procedure
TfrmAnggota.DateTimePicker1Change(Sender: TObject);
begin
DBEdit3.Text :=
dateToStr(DateTimePicker1.Date);
end;
procedure
TfrmAnggota.Button1Click(Sender: TObject);
var
BlobField : TBlobField;
begin
with topenpicturedialog.Create(nil) do
try
InitialDir := '.';
if Execute then
begin
if
ADOTable1.State in [dsbrowse] then
ADOTable1.Edit;
BlobField :=
ADOTable1.FieldByName('Foto') as TBlobField;
BlobField.LoadFromFile(filename);
end;
finally
Free;
end;
//GetJpeg(Image1,Blobfield);
end;
procedure
TfrmAnggota.Button3Click(Sender: TObject);
begin
close;
end;
procedure
TfrmAnggota.Button4Click(Sender: TObject);
begin
ADOTable1.Append;
end;
procedure
TfrmAnggota.Button5Click(Sender: TObject);
begin
ADOTable1.Delete;
end;
procedure TfrmAnggota.Button6Click(Sender:
TObject);
begin
ADOTable1.Post;
end;
procedure
TfrmAnggota.SpeedButton1Click(Sender: TObject);
begin
DataSource1.DataSet.First;
end;
procedure
TfrmAnggota.SpeedButton2Click(Sender: TObject);
begin
DataSource1.DataSet.Prior;
end;
procedure
TfrmAnggota.SpeedButton3Click(Sender: TObject);
begin
DataSource1.DataSet.Next;
end;
procedure
TfrmAnggota.SpeedButton4Click(Sender: TObject);
begin
DataSource1.DataSet.Last;
end;
procedure
TfrmAnggota.Button2Click(Sender: TObject);
begin
if ADOTable1.State in [dsbrowse] then
ADOTable1.Edit;
TBlobField(ADOTable1.FieldByName('Foto')).Clear;
end;
end.
No comments:
Post a Comment