Delphi for delphier

Grafik – BMP – Animasi Fade Out

Tingkatan Menengah
   
Kategori Grafik
   
Sub Kategori File
   
Judul Membuat animasi fade Out dengan bitmap
   
Oleh
eko-indriyawan-png.png   Nama Eko Indriyawan
Domisili Surabaya – Darmo Satelit
Delphi Delphi 2007 for Win32
YM eko_elits
Email eko_elits@yahoo.com
Telp 031 – 605 384 36
   
Referensi http://www.swissdelphicenter.ch/torry/showcode.php?id=1165
   
Tujuan
Mengajarkan kepada Delphier untuk membuat animasi fading pada bitmap.
   
Overview
Pembahasan pada artikel ini akan mengajarkan kepada para delphier tentang bagaimana membuat animasi fade in dengan menggunakan object bitmap.
Artikel ini sangatlah menarik untuk dipelajari, apalagi para delphier yang suka membuat animasi grafik untuk program aplikasinya.
Semoga artikel ini bisa bermanfaat dan bisa membangkitkan semangat para delphier untuk berkreasi mendapatkan ide – ide lain.
   
  Struktur prosedur fadeOut :
   
 
procedure FadeOut(ImageFileName: TFileName);
type
PRGBTripleArray = ^ TRGBTripleArray;
TRGBTripleArray = array[0..32767] of TRGBTriple;
var
Bitmap, BaseBitmap: TBitmap;
Row, BaseRow: PRGBTripleArray;
x, y, step: integer;
begin
// mempersiapkan object bitmap
Bitmap := TBitmap.Create;
try
Bitmap.PixelFormat := pf32bit;
Bitmap.LoadFromFile(ImageFileName);
BaseBitmap := TBitmap.Create;
try
BaseBitmap.PixelFormat := pf32bit;
BaseBitmap.Assign(Bitmap);
// Proses fading
for step := 32 downto 0 do
begin
// ditahan bentar biar kelihatan fadingnya
Sleep(20);
for y := 0 to (Bitmap.Height – 1) do
begin
BaseRow := BaseBitmap.Scanline[y];
Row := Bitmap.Scanline[y];
for x := 0 to (Bitmap.Width – 1) do
begin
Row[x].rgbtRed := (step * BaseRow[x].rgbtRed) shr 5;
Row[x].rgbtGreen := (step * BaseRow[x].rgbtGreen) shr 5;
Row[x].rgbtBlue := (step * BaseRow[x].rgbtBlue) shr 5;
end;
end;
Form1.Canvas.Draw(10, 10, Bitmap);
Form1.Canvas.Draw(110, 10, Bitmap);
Form1.Canvas.Draw(210, 10, Bitmap);
InvalidateRect(Form1.Handle, nil, False);
RedrawWindow(Form1.Handle, nil, 0, RDW_UPDATENOW);
end;
finally
BaseBitmap.Free;
end;
finally
Bitmap.Free;
end;
end;
   
Petunjuk :
Silahkan anda ikuti langkah – langkah berikut ini dengan pelan – pelan agar bisa berjalan dengan lancar sesuai dengan petunjuk yang sudah diberikan.
   
Langkah 1
   
Langkah 2
   
Langkah 3
Dari program tersebut silahkan tambahkan object Button3 kedalam Form
   
  Button1: TButton;
Button2: TButton;
Bevel1: TBevel;
Button3: TButton;
   
Langkah 3
Atur desainnya seperti berikut ditampilkan pada gambar form dibawah ini
   
 
file0002.jpg
   
Langkah 4
Buat prosedur fadeOut. Untuk lebih detailnya, silahkan lihat potongan kode program berikut.
   
 
procedure FadeOut(ImageFileName: TFileName);
type
PRGBTripleArray = ^ TRGBTripleArray;
TRGBTripleArray = array[0..32767] of TRGBTriple;
var
Bitmap, BaseBitmap: TBitmap;
Row, BaseRow: PRGBTripleArray;
x, y, step: integer;
begin
// mempersiapkan object bitmap
Bitmap := TBitmap.Create;
try
Bitmap.PixelFormat := pf32bit;
Bitmap.LoadFromFile(ImageFileName);
BaseBitmap := TBitmap.Create;
try
BaseBitmap.PixelFormat := pf32bit;
BaseBitmap.Assign(Bitmap);
// Proses fading
for step := 32 downtodo
begin
// ditahan bentar biar kelihatan fadingnya
Sleep(20);
for y := 0 to (Bitmap.Height – 1) do
begin
BaseRow := BaseBitmap.Scanline[y];
Row := Bitmap.Scanline[y];
for x := 0 to (Bitmap.Width – 1) do
begin
Row[x].rgbtRed := (step * BaseRow[x].rgbtRed) shr 5;
Row[x].rgbtGreen := (step * BaseRow[x].rgbtGreen) shr 5;
Row[x].rgbtBlue := (step * BaseRow[x].rgbtBlue) shr 5;
end;
end;
Form1.Canvas.Draw(10, 10, Bitmap);
Form1.Canvas.Draw(110, 10, Bitmap);
Form1.Canvas.Draw(210, 10, Bitmap);
InvalidateRect(Form1.Handle, nil, False);
RedrawWindow(Form1.Handle, nil, 0, RDW_UPDATENOW);
end;
finally
BaseBitmap.Free;
end;
finally
Bitmap.Free;
end;
end;
   
Langkah 5
Silahkan anda klik 2x tombol Fade Out. Setelah itu anda lanjutkan dengan menuliskan kode program didalam event OnClick seperti terlihat pada potongan kode program dibawah ini.
   
 
procedure TForm1.Button2Click(Sender: TObject);
begin
FadeOut(‘ekoindri.bmp’);
end;
   
Langkah 6
Silahkan anda compile. Tekan tombol Ctrl + F9
   
 
Tunggu beberapa saat… ( Sedang di cek kode programnya )
 
Apabila tidak muncul pesan error, berarti program yang anda buat telah berhasil dan silahkan anda tekan tombol F9 untuk menjalankan program aplikasinya.
   
Langkah 7
Silahkan anda tekan tombol Buka File.
   
  Tunggu beberapa saat hingga muncul animasi gambar yang muncul secara samar samar hingga terlihat jelas.
   
 
Program sudah selesai anda buat. Sekarang silahkan anda tekan tombol Keluar
Semoga artikel ini bisa bermanfaat. Silahkan anda berikan informasi ini kepada teman – teman anda yang belum tahu.
Mari kita wujudkan kemajuan IT Indonesia bersama dengan teman – teman yang lain dengan Delphi sebagai media pemupuk kebersamaan.
   
   
Download
Silahkan anda download link diatas untuk mendapatkan contoh program aplikasi secara lengkap.
Ada beberapa masukan dan keluhan dari teman – teman, bahwa ada beberapa program contoh tidak bisa dijalankan dari delphi 7. Hal ini dikarenakan program contoh dibuat dengan menggunakan Delphi 2007 for win32.
Apabila anda menggunakan D7, sebaiknya anda mengikuti pandauan dari langkah – langkah yang sudah diberikan.
Atas perhatiannya, saya mengucapkan banyak terimakasih.
   
Link terkait  
   
Buku panduan
Dasar First Step To Be A Programmer
Menengah Pemrograman Database dengan Delphi dan MS SQL Server
Menengah Membangun database MLM

Tinggalkan sebuah Komentar »

Belum ada komentar.

RSS feed for comments on this post.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

Buat situs web atau blog gratis di WordPress.com.

%d blogger menyukai ini: