procedure TForm1.Timer1Timer(Sender: TObject);
begin
if Label1.Visible then Label1.Visible:=False
else label1.Visible:=True;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
application.Terminate;
end;
Logika program :
Program animasi timer ini akan menampilkan tulisan yang ada pada label1 menjadi berkedip – kedip dengan memanfaatkan timer pada Delphi.
procedure TForm1.Timer1Timer(Sender: TObject);
kode diatas menandakan bahwa statement – statement yang ada dalam blok program dibawahnya merupakan statement yang akan dilakukan saat TForm1 ditampilkan dengan menggunakan komponen timer.ini berarti statement – statement yang ada akan langsung dijalankan saat program running.
begin
if Label1.Visible then Label1.Visible:=False
else label1.Visible:=True;
end;
metode visible pada kode diatas berfungsi untuk menentukan apakah suatu komponen atau objek ditampilkan atau tidak saat program dijalankan.jadi kode diatas berarti jika nilai dari label1.visible bernilai true dengan kata lain label1 ditampilkan dalam Tform, maka nilai dari label1.visible akkan dirubah menjadi false, sehingga label1 tidak ditampilkan dalam Tform.dan bila nilai label1.visible tidak bernilai true, maka nilainya akan dirubah menjadi false.statement ini akan menyebabkan nilai dari label1.visible akan berubah-rubah nilainya dari true menjadi false dan sebaliknya setiap interval waktu berganti.jadi dengan kata lain label1 akan ditampilkan kemudian akan tidak terlihat selama interval waktu yang telah ditentukan pada timer
procedure TForm1.Button1Click(Sender: TObject);
kode diatas menandakan bahwa statement – statement yang ada pada blok program dibawahnya merupakan statement yang akan dilakukan saat button1 diklik.
begin
application.Terminate;
end;
seperti telah dijelaskan sebelumnya, program ini akan menampilkan tulisan yang ada pada label1 seolah – olah berkedip – kedip sesuai dengan interval waktu yang ditentukan.tetapi, timer akan terus berjalan sampai program dikeluarkan atau di close.jadi perlu dibuat satu button untuk membuat efek animasi berhenti.kode diatas berfungsi untuk menghentikan aplikasi yang sedang berjalan.jadi, saat button1 diklik timer akan dihentikan dan keluar dari program.
Tampilkan postingan dengan label delphi. Tampilkan semua postingan
Tampilkan postingan dengan label delphi. Tampilkan semua postingan
Rabu, 02 November 2011
Minggu, 23 Oktober 2011
Menampilakn tanggal dengan fungsi di delphi
Tutorial berikut ini akan menjelaskan bagaimana membuat Format Tanggal dengan delphi mengunakan sebuah fungsi, fungsi wajib diketahui oleh seorang perogrammer baik itu programmer Delphi, Visual Basic, WEB dengan PHP, Develover 2000 (Oracle) dan lain-lain. Atas dasar pemikiran diatas saya mencoba membuat fungsi untuk mengnampilkan tanggal yang hasil akhirnya adalah (Hari, Tanggal Bulan Tahun [ Rabu, 27 Agustus 1986]), tapi tanggal yang akan ditampilkan adalah tanggal pada hari yang aktif.
Sediakan sebuah aplikasi baru di delphi lalu simpan dech aplikasi-nya ya.
Setelah aplikasi anda buat jangan lupa implementasikan dibagian Public declarations fungsi dibawah ini :
function genTanggal(vDate: TDateTime): String;
Lalu dibagian implementation ketikan listing berikut (untuk deklarasi sebuah fungsi tadi)
function TForm1.genTanggal(vDate: TDateTime): String;
var Counter: byte;
const
NamaHari : Array[1..7] of string = (‘Minggu’, ‘Senin’, ‘Selasa’,
‘Rabu’, ‘Kamin’, ‘Jum”at’, ‘Sabtu’);
NamaBulan: Array[1..12] of String = (‘Januari’, ‘Februari’, ‘Maret’,
‘April’, ‘Mei’, ‘Juni’, ‘Juli’, ‘Agustus’,
‘September’, ‘Oktober’, ‘November’, ‘Desember’);
begin
For Counter := 1 to 7 do
LongDayNames[Counter]:=NamaHari[Counter];
For Counter := 1 to 12 do
LongMonthNames[Counter]:=NamaBulan[Counter];
Result := FormatdateTime(‘dddd, d mmmm yyyy’, vDate);
end;
Setelah fungsi anda buat tambahkan komponent DateTimePicker1 dan Edit1.Text, lalu dibagian FormCreate (klik 2x dulu form-NYA ya) ketikan listing dibawah ini :
Edit1.Text:=genTanggal(DateTimePicker1.Date);
Jalankan aplikasi-NYA, anda dapat melihat hasil-NYA.
Sediakan sebuah aplikasi baru di delphi lalu simpan dech aplikasi-nya ya.
Setelah aplikasi anda buat jangan lupa implementasikan dibagian Public declarations fungsi dibawah ini :
function genTanggal(vDate: TDateTime): String;
Lalu dibagian implementation ketikan listing berikut (untuk deklarasi sebuah fungsi tadi)
function TForm1.genTanggal(vDate: TDateTime): String;
var Counter: byte;
const
NamaHari : Array[1..7] of string = (‘Minggu’, ‘Senin’, ‘Selasa’,
‘Rabu’, ‘Kamin’, ‘Jum”at’, ‘Sabtu’);
NamaBulan: Array[1..12] of String = (‘Januari’, ‘Februari’, ‘Maret’,
‘April’, ‘Mei’, ‘Juni’, ‘Juli’, ‘Agustus’,
‘September’, ‘Oktober’, ‘November’, ‘Desember’);
begin
For Counter := 1 to 7 do
LongDayNames[Counter]:=NamaHari[Counter];
For Counter := 1 to 12 do
LongMonthNames[Counter]:=NamaBulan[Counter];
Result := FormatdateTime(‘dddd, d mmmm yyyy’, vDate);
end;
Setelah fungsi anda buat tambahkan komponent DateTimePicker1 dan Edit1.Text, lalu dibagian FormCreate (klik 2x dulu form-NYA ya) ketikan listing dibawah ini :
Edit1.Text:=genTanggal(DateTimePicker1.Date);
Jalankan aplikasi-NYA, anda dapat melihat hasil-NYA.
Senin, 14 Juni 2010
Grafik delphi 2
Udah ada contoh programnya sii… pake Tee Chart.
Komponen bawaan Delphi 7 yang terletak pada tab Data Control ini cukup powerfull untuk menampilkan grafik. Sudah dilengkapi dengan berbagai jenis grafik pula. Mulai dari Bar, Line, Sampai Pie, bahkan tersedia bentuk 3D.
Langkah-langkah:
1. Tambahkan komponen DBChart & ADOQuery (boleh menggunakan Dataset yang lain)
2. Setting koneksi pada ADOQuery
3. Tuliskan query-nya, contoh
ADOQuery.active:=false;
ADOQuery.SQL.Text:=’SELECT id,nama,SUM(stok) AS stok FROM barang GROUP BY id’;
ADOQuery.active:=true;
4. Lakukan pengaturan pada DBChart, dobel klik pada DBChart
- Tambahkan Series pada tab Chart, tentukan jenis grafik yang diinginkan
- Pilih Tab Datasource, tentukan sumber Data.
Jika ingin mengambil data dari ADOQuery, pilih Dataset,
lalu pilih nama komponen Datasetnya (dalam hal ini yaitu ADOQuery)
- Tentukan Labels, value utk X=stok dan value utk Y=nama (sesuai dengan contoh query)
- Tekan tombol CLose, jika sudah selesai
5. Grafik akan muncul
Komponen bawaan Delphi 7 yang terletak pada tab Data Control ini cukup powerfull untuk menampilkan grafik. Sudah dilengkapi dengan berbagai jenis grafik pula. Mulai dari Bar, Line, Sampai Pie, bahkan tersedia bentuk 3D.
Langkah-langkah:
1. Tambahkan komponen DBChart & ADOQuery (boleh menggunakan Dataset yang lain)
2. Setting koneksi pada ADOQuery
3. Tuliskan query-nya, contoh
ADOQuery.active:=false;
ADOQuery.SQL.Text:=’SELECT id,nama,SUM(stok) AS stok FROM barang GROUP BY id’;
ADOQuery.active:=true;
4. Lakukan pengaturan pada DBChart, dobel klik pada DBChart
- Tambahkan Series pada tab Chart, tentukan jenis grafik yang diinginkan
- Pilih Tab Datasource, tentukan sumber Data.
Jika ingin mengambil data dari ADOQuery, pilih Dataset,
lalu pilih nama komponen Datasetnya (dalam hal ini yaitu ADOQuery)
- Tentukan Labels, value utk X=stok dan value utk Y=nama (sesuai dengan contoh query)
- Tekan tombol CLose, jika sudah selesai
5. Grafik akan muncul
Grafik delphi
Langkah :
* Buka Delphi anda (saya menggunakan Versi 6)
* Letakkan komponen 1 chart dan 1 button ke form.
* Double klik pada komponen chart, sehingga anda dapat melihat tampilan dialog box untuk mengkonfigurasi chart sesuai dengan keinginan anda.
* Klik tombol ”add” pada tab series, kemudian pilih tampilan grafik (bar, line, pie, dlsb..) yang ada pada tampilan tersebut.
Setelah langkah diatas terpenuhi, kemudian kita menuju ke proses pembuatannya:
procedure TForm1.Button1Click(Sender: TObject);
begin
Chart1.Series[0].AddXY(10, 20, '', clblue);
Chart1.Series[0].AddXY(15, 50, '', clblue);
Chart1.Series[0].AddXY(20, 30, '', clblue);
Chart1.Series[0].AddXY(25, 70, '', clblue);
Chart1.Series[0].AddXY(30, 10, '', clblue);
Chart1.Series[0].AddXY(35, 50, '', clblue);
Chart1.Series[0].AddXY(40, 45, '', clblue);
Chart1.Series[0].AddXY(45, 10, '', clblue);
end;
* Buka Delphi anda (saya menggunakan Versi 6)
* Letakkan komponen 1 chart dan 1 button ke form.
* Double klik pada komponen chart, sehingga anda dapat melihat tampilan dialog box untuk mengkonfigurasi chart sesuai dengan keinginan anda.
* Klik tombol ”add” pada tab series, kemudian pilih tampilan grafik (bar, line, pie, dlsb..) yang ada pada tampilan tersebut.
Setelah langkah diatas terpenuhi, kemudian kita menuju ke proses pembuatannya:
procedure TForm1.Button1Click(Sender: TObject);
begin
Chart1.Series[0].AddXY(10, 20, '', clblue);
Chart1.Series[0].AddXY(15, 50, '', clblue);
Chart1.Series[0].AddXY(20, 30, '', clblue);
Chart1.Series[0].AddXY(25, 70, '', clblue);
Chart1.Series[0].AddXY(30, 10, '', clblue);
Chart1.Series[0].AddXY(35, 50, '', clblue);
Chart1.Series[0].AddXY(40, 45, '', clblue);
Chart1.Series[0].AddXY(45, 10, '', clblue);
end;
Media Player 1
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, MPlayer, Buttons, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
mp: TMediaPlayer;
Panel1: TPanel;
btstart: TButton;
btstop: TButton;
btopen: TButton;
progress: TScrollBar;
showpls: TSpeedButton;
judul: TLabel;
Timer1: TTimer;
OpenDialog1: TOpenDialog;
Image1: TImage;
Label1: TLabel;
procedure FormCreate(Sender: TObject);
procedure showplsClick(Sender: TObject);
procedure btopenClick(Sender: TObject);
procedure btstartClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btstopClick(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure progressScroll(Sender: TObject; ScrollCode: TScrollCode;
var ScrollPos: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
index : integer;
implementation
uses Unit2;
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
judul.Caption:='';
timer1.Enabled:=false;
btstart.Enabled:=false;
btstop.Enabled:=false;
progress.Enabled:=false;
end;
procedure TForm1.showplsClick(Sender: TObject);
begin
playlist.show;
end;
procedure TForm1.btopenClick(Sender: TObject);
var
i : integer;
begin
if opendialog1.Execute then
begin
for i:=0 to opendialog1.Files.Count-1 do
playlist.list.Items.Add(opendialog1.Files.Strings[i]);
btstart.Enabled:=true;
playlist.Show;
playlist.list.ItemIndex:=0;
end;
end;
procedure TForm1.btstartClick(Sender: TObject);
begin
if btstart.Caption = 'Start' then
begin
index:=playlist.list.itemindex;
mp.FileName:=playlist.list.Items.Strings[index];
mp.Open;
judul.Caption:=extractfilename(mp.FileName);
judul.Left:=200;
progress.Max:=mp.Length;
mp.Play;
timer1.Enabled:=true;
progress.Enabled:=true;
btstop.Enabled:=true;
btstart.Caption:='Pause';
end else
if btstart.Caption = 'Pause' then
begin
mp.Pause;
btstart.Caption:='Play';
end else
if btstart.Caption = 'Play' then
begin
mp.Pause;
btstart.Caption:='Pause';
end else
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
mp.Close;
end;
procedure TForm1.btstopClick(Sender: TObject);
begin
mp.Stop;
timer1.Enabled:=false;
judul.Left:=8;
btstart.Caption:='Start';
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
judul.Left:=judul.Left-1;
if judul.Left = 0-judul.Width then
judul.Left:=panel1.Width+1;
progress.Position:=mp.Position;
if mp.position=mp.Length then
begin
if index + 1 = playlist.list.Items.Count then
begin
form1.btstop.OnClick(self);
playlist.list.ItemIndex:=0;
end else
begin
playlist.list.ItemIndex:=index+1;
btstart.Caption:='Start';
btstart.OnClick(self);
end;
end;
end;
procedure TForm1.progressScroll(Sender: TObject; ScrollCode: TScrollCode;
var ScrollPos: Integer);
begin
mp.Position:=progress.Position;
mp.Play;
end;
end.
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, MPlayer, Buttons, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
mp: TMediaPlayer;
Panel1: TPanel;
btstart: TButton;
btstop: TButton;
btopen: TButton;
progress: TScrollBar;
showpls: TSpeedButton;
judul: TLabel;
Timer1: TTimer;
OpenDialog1: TOpenDialog;
Image1: TImage;
Label1: TLabel;
procedure FormCreate(Sender: TObject);
procedure showplsClick(Sender: TObject);
procedure btopenClick(Sender: TObject);
procedure btstartClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btstopClick(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure progressScroll(Sender: TObject; ScrollCode: TScrollCode;
var ScrollPos: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
index : integer;
implementation
uses Unit2;
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
judul.Caption:='';
timer1.Enabled:=false;
btstart.Enabled:=false;
btstop.Enabled:=false;
progress.Enabled:=false;
end;
procedure TForm1.showplsClick(Sender: TObject);
begin
playlist.show;
end;
procedure TForm1.btopenClick(Sender: TObject);
var
i : integer;
begin
if opendialog1.Execute then
begin
for i:=0 to opendialog1.Files.Count-1 do
playlist.list.Items.Add(opendialog1.Files.Strings[i]);
btstart.Enabled:=true;
playlist.Show;
playlist.list.ItemIndex:=0;
end;
end;
procedure TForm1.btstartClick(Sender: TObject);
begin
if btstart.Caption = 'Start' then
begin
index:=playlist.list.itemindex;
mp.FileName:=playlist.list.Items.Strings[index];
mp.Open;
judul.Caption:=extractfilename(mp.FileName);
judul.Left:=200;
progress.Max:=mp.Length;
mp.Play;
timer1.Enabled:=true;
progress.Enabled:=true;
btstop.Enabled:=true;
btstart.Caption:='Pause';
end else
if btstart.Caption = 'Pause' then
begin
mp.Pause;
btstart.Caption:='Play';
end else
if btstart.Caption = 'Play' then
begin
mp.Pause;
btstart.Caption:='Pause';
end else
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
mp.Close;
end;
procedure TForm1.btstopClick(Sender: TObject);
begin
mp.Stop;
timer1.Enabled:=false;
judul.Left:=8;
btstart.Caption:='Start';
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
judul.Left:=judul.Left-1;
if judul.Left = 0-judul.Width then
judul.Left:=panel1.Width+1;
progress.Position:=mp.Position;
if mp.position=mp.Length then
begin
if index + 1 = playlist.list.Items.Count then
begin
form1.btstop.OnClick(self);
playlist.list.ItemIndex:=0;
end else
begin
playlist.list.ItemIndex:=index+1;
btstart.Caption:='Start';
btstart.OnClick(self);
end;
end;
end;
procedure TForm1.progressScroll(Sender: TObject; ScrollCode: TScrollCode;
var ScrollPos: Integer);
begin
mp.Position:=progress.Position;
mp.Play;
end;
end.
Kamis, 24 Desember 2009
Cari data mahasiswa
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, DB, DBTables;
type
Tformcarimahasiswa = class(TForm)
TableMahasiswa: TTable;
Datamahasiswa: TDataSource;
DBGridmahasiswa: TDBGrid;
Label1: TLabel;
EditNoMhs: TEdit;
Buttoncari: TButton;
Buttonkeluar: TButton;
Label2: TLabel;
procedure ButtoncariClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
formcarimahasiswa: Tformcarimahasiswa;
implementation
{$R *.dfm}
procedure Tformcarimahasiswa.ButtoncariClick(Sender: TObject);
var Ada:boolean
begin
datamhs.SetKey;
datamhs.indexname:='Nomhs_idx';
Ada:=datamhs.findkey([EditNoMhs.Text]);
if Ada then
begin
datamhs.goto nearest;
DBGridmahasiswa.SetFocus;
end
else
begin
MessageDlg('Data Yang Dicari euweuh....',mtConfirmation,[mbOK],0);
end;
end.
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, DBGrids, DB, DBTables;
type
Tformcarimahasiswa = class(TForm)
TableMahasiswa: TTable;
Datamahasiswa: TDataSource;
DBGridmahasiswa: TDBGrid;
Label1: TLabel;
EditNoMhs: TEdit;
Buttoncari: TButton;
Buttonkeluar: TButton;
Label2: TLabel;
procedure ButtoncariClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
formcarimahasiswa: Tformcarimahasiswa;
implementation
{$R *.dfm}
procedure Tformcarimahasiswa.ButtoncariClick(Sender: TObject);
var Ada:boolean
begin
datamhs.SetKey;
datamhs.indexname:='Nomhs_idx';
Ada:=datamhs.findkey([EditNoMhs.Text]);
if Ada then
begin
datamhs.goto nearest;
DBGridmahasiswa.SetFocus;
end
else
begin
MessageDlg('Data Yang Dicari euweuh....',mtConfirmation,[mbOK],0);
end;
end.
database excel
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, DBTables, StdCtrls, Grids, DBGrids;
type
TForm1 = class(TForm)
Label1: TLabel;
DBGrid1: TDBGrid;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
DataSource1: TDataSource;
Table1: TTable;
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
Xls : variant;
implementation
uses comObj;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Xls := CreateOleObject('Excel.Application');
Xls.Visible:=true;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
if not VarIsEmpty(Xls) then
Xls.quit;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
close;
end;
procedure TForm1.Button2Click(Sender: TObject);
var Sheet : Variant;
Baris : integer;
begin
Xls.caption := 'Report Barang';
Xls.workbooks.add;
Xls.workbooks[1].sheets.add;
Xls.workbooks[1].worksheets[1].name := 'Report 01';
Sheet := Xls.workbooks[1].worksheets['Report 01'];
// menulis judul laporan
Xls.workbooks[1].worksheets['Report 01'].rows[1].Font.size := 12;
Xls.workbooks[1].worksheets['Report 01'].rows[1].Font.Color := clBlue;
Xls.workbooks[1].worksheets['Report 01'].rows[1].Font.Bold := true;
// menulis judul tabel barang
Xls.workbooks[1].worksheets['Report 01'].rows[3].Font.Bold := true;
sheet.cells[3, 1] := 'Kode';
sheet.cells[3, 2] := 'Nama Barang';
sheet.cells[3, 3] := 'Harga';
sheet.cells[3, 4] := 'Jumlah';
sheet.cells[3, 5] := 'Diskon';
sheet.cells[3, 6] := 'Pemasok';
// cetak isi tabel
Baris := 3;
Table1.First;
while not Table1.EOF do
begin
inc(Baris);
sheet.cells[Baris, 1] := Table1.FieldByName('Kode').AsString;
sheet.cells[Baris, 2] := Table1.FieldByName('Nama Barang').AsString;
sheet.cells[Baris, 3] := Table1.FieldByName('Harga').AsFloat;
sheet.cells[Baris, 4] := Table1.FieldByName('Jumlah').AsInteger;
sheet.cells[Baris, 5] := Table1.FieldByName('Diskon').AsInteger;
sheet.cells[Baris, 6] := Table1.FieldByName('Pemasok').AsString;
Table1.Next;
end;
// mengatur lebar kolom
Xls.worksheet[1].worksheet['Report 01'].columns[1].columnswidth := 8;
Xls.worksheet[1].worksheet['Report 01'].columns[2].columnswidth := 30;
Xls.worksheet[1].worksheet['Report 01'].columns[3].columnswidth := 10;
Xls.worksheet[1].worksheet['Report 01'].columns[4].columnswidth := 7;
Xls.worksheet[1].worksheet['Report 01'].columns[5].columnswidth := 6;
Xls.worksheet[1].worksheet['Report 01'].columns[6].columnswidth := 8;
// membuat rangkuman (summary)
Inc(baris,2);
Sheet.cella[Baris,2] := 'Jumlah record dalam tabel adalah' + IntToStr(Table1.RecNo);
end;
end.
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, DBTables, StdCtrls, Grids, DBGrids;
type
TForm1 = class(TForm)
Label1: TLabel;
DBGrid1: TDBGrid;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
DataSource1: TDataSource;
Table1: TTable;
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
Xls : variant;
implementation
uses comObj;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Xls := CreateOleObject('Excel.Application');
Xls.Visible:=true;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
if not VarIsEmpty(Xls) then
Xls.quit;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
close;
end;
procedure TForm1.Button2Click(Sender: TObject);
var Sheet : Variant;
Baris : integer;
begin
Xls.caption := 'Report Barang';
Xls.workbooks.add;
Xls.workbooks[1].sheets.add;
Xls.workbooks[1].worksheets[1].name := 'Report 01';
Sheet := Xls.workbooks[1].worksheets['Report 01'];
// menulis judul laporan
Xls.workbooks[1].worksheets['Report 01'].rows[1].Font.size := 12;
Xls.workbooks[1].worksheets['Report 01'].rows[1].Font.Color := clBlue;
Xls.workbooks[1].worksheets['Report 01'].rows[1].Font.Bold := true;
// menulis judul tabel barang
Xls.workbooks[1].worksheets['Report 01'].rows[3].Font.Bold := true;
sheet.cells[3, 1] := 'Kode';
sheet.cells[3, 2] := 'Nama Barang';
sheet.cells[3, 3] := 'Harga';
sheet.cells[3, 4] := 'Jumlah';
sheet.cells[3, 5] := 'Diskon';
sheet.cells[3, 6] := 'Pemasok';
// cetak isi tabel
Baris := 3;
Table1.First;
while not Table1.EOF do
begin
inc(Baris);
sheet.cells[Baris, 1] := Table1.FieldByName('Kode').AsString;
sheet.cells[Baris, 2] := Table1.FieldByName('Nama Barang').AsString;
sheet.cells[Baris, 3] := Table1.FieldByName('Harga').AsFloat;
sheet.cells[Baris, 4] := Table1.FieldByName('Jumlah').AsInteger;
sheet.cells[Baris, 5] := Table1.FieldByName('Diskon').AsInteger;
sheet.cells[Baris, 6] := Table1.FieldByName('Pemasok').AsString;
Table1.Next;
end;
// mengatur lebar kolom
Xls.worksheet[1].worksheet['Report 01'].columns[1].columnswidth := 8;
Xls.worksheet[1].worksheet['Report 01'].columns[2].columnswidth := 30;
Xls.worksheet[1].worksheet['Report 01'].columns[3].columnswidth := 10;
Xls.worksheet[1].worksheet['Report 01'].columns[4].columnswidth := 7;
Xls.worksheet[1].worksheet['Report 01'].columns[5].columnswidth := 6;
Xls.worksheet[1].worksheet['Report 01'].columns[6].columnswidth := 8;
// membuat rangkuman (summary)
Inc(baris,2);
Sheet.cella[Baris,2] := 'Jumlah record dalam tabel adalah' + IntToStr(Table1.RecNo);
end;
end.
Langganan:
Postingan (Atom)