27369332 Dasar Dasar Pemrograman Borland Delphi 6 0

download 27369332 Dasar Dasar Pemrograman Borland Delphi 6 0

of 51

Transcript of 27369332 Dasar Dasar Pemrograman Borland Delphi 6 0

BAB I MENGENAL DAN MENCOBA DELPHIMengenal DelphiBorland Delphi merupakan program aplikasi visual dan database yang berbasis Object Pascal dari Borland. Delphi mempunyai kemampuan untuk membangun aplikasi yang multithreaded dan mendukung pembuatan, pemakaian, serta pengontrolan thread.

Mengenal IDE DelphiIDE pada Delphi sebagai interface dalam Delphi mempunyai tujuh bagian utama seperti yang terlihat pada gambar diatas, yaitu menu bars, tool bars, form designer, component palette, object inspector, code editor, dan object treeview. Tetapi sebenarnya masih adalagi bagian-bagian IDE yang lain yang tidak terlihat pada tampilan awal ini, seperti data module dan yang lainnya. Jika anda masuk ke dalam Delphi, akan ditampilkan layar sebagai berikut:

Menu Bar Pada dasarnya menu yang ada di dalam Delphi mempunyai fungsi sebagaimana menu yang ada pada aplikasi windows yang lainnya. Secara detail menu tersebut adalah menu File, Edit, Search, View, Project, Run, Component, Database, Tools, Window, dan Help, yang masingmasing menu ini mempunyai fungsi yang berbeda-beda. Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 1

Form DesaignerForm desaigner digunakan oleh pemrogram untuk mendesain tampilan atau interface dari programnya. Dimana Anda akan meletakan komponenkomponen dari Component Palette, yang akan digunakan dalam program Anda.

Code EditorMelalui window ini Anda akan menuliskan kode-kode dari program Anda. Bahasa yang digunakan adalah bahasa objek pascal. Jika Anda telah mempelajari pemrograman yang menggunakan bahasa pemrograman pascal maka Anda tidak akan asing lagi dengan kodekode yang ada disini. Yang perlu Anda ketahui dalam window ini Anda tidak perlu menuliskan semua kode sumber karena Delphi akan menuliskan kerangkanya untuk Anda, jadi Anda akan menuliskan bagianbagian terpenting saja dari program Anda.

Tool barsToolbars adalah kumpulan tombol-tombol sebagai pengganti beberapa command yang ada pada menu. Dengan adanya toolbars ini maka Anda dapat menjalankan suatu command dengan cepat tanpa harus melaluli pemilihan menu.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

2

Object InspectorPada bagian ini ada dua halaman tab yang dapat Anda lihat, tab yang pertama adalah tab properties dan yang kedua adalah tab event. Dengan tab properties Anda dapat merubah suatu karakteristik dari suatu komponen, misalnya nama komponen, warna, caption dan lainya. Sedangkan tab event digunakan untuk menyisipkan kode untuk menangani pada kejadian tertentu misalnya onclick, onclose dan lainnya.

Object TreeviewObject treeview merupakan suatu bagian yang berisi komponan-komponan yang Anda gunakan dalam membuat program. Semua daftar komponen yang telah Anda buat akan ada didalamnya. Dalam objek treeview ini daftar komponen disajikan dalam suatu diagram yang sesuai dengan diagram pohon. Dalam pemilihan objek yang telah Anda masukan kedalam program, Anda dapat memilihnya melalui fasilitas ini.

Component PaletteKomponen pallete berisi daftar komponen-komponen yang disediakan oleh Delphi. komponen-komponen ini disajikan dalam halam-halaman tab yang dikelompokan berdasarkan jenis-jenisnya. Setiap komponen tentu saja memiliki fungsi masing-masing dan mempunyai karakterisitik yang berbeda-beda.

Mencoba Delphi1. Jalankan Delphi 2. Setelah masuk ke Delphi, anda akan melihat sebuah form kosong yang berjudul FORM1. Jika tidak ada, pilih menu File|New Application.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

3

3. Pilih tab Standard dari Component Pallete

4. Klik Button.

5. Klik di tengah-tengah form dan akan muncul sebuah button di form. 6. Klik ganda pada button. Ditampilkan sebuah window dengan cursor berada di antara sebuah sebuah begin dan end.

7. Ketikkan pernyataan ini : Canvas.TextOut(20,20,contoh peMrograman Delphi..); 8. Anda telah membuah aplikasi Delphi. Tekan tombol F9 atau run|Run dari baris menu, untuk menjalankan aplikasi. Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 4

Menampilkan Kotak Pesan1. Buat aplikasi bru dengan cara klik menu file >> New >> application. 2. tambahkan komponen button pada form dan ubah propery caption menjadi Pesan.

3. Double klik komponen tersebut sehingga anda masuk pada kode editor. Dan masukan kode program berikut: Showmessage(Ini Contoh Pesan!!!); Terlihat secara lengkap seperti gambar berikut:

4. Jalankan program. Jika sudah berjalan cobalah dengan melakukan klik pada tombol pesan. Aplikasi akan menampilkan pesan seperti gambar berikut:

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

5

BAB II APLIKASI CONSOLE, TIPE DATA KONSTANTA DAN VARIABELAplikasi ConsoleAplikasi console merupakan sebuah aplikasi yang tidak mempunyai form. Aplikasi ini berbasis text mode dan umumnya berjalan pada command prompt. Delphi menyediakan fasilitas untuk mmbangun aplikai console. Ikuti Langkah berikut: 1. Buat folder nama anda pada direktori .. My document/pemrograman. Misalnya C:\My document/pemrograman/robiin. 2. Buka aplikasi pemograman Delphi dari menu start. 3. setelah aplikasi Delphi terbuka, buatlah aplikasi untuk console dengan cara klik file >> new >> other sehingga muncul kotak dialog new item.

4. Klik pada Console Aplication kemudian klik tombol OK. Setelah itu code editor pada Delphi akan muncul dan siap untuk memulai membuat program console. 5. Simpan aplikasi tersebut pada folder yang telah anda buat dan berinama pertama.pas. 6. Ketikan beberapa kode program sehingga seluruh program menjadi seperti berikut. program pertama; {$APPTYPE CONSOLE} uses SysUtils; begin { TODO -oUser -cConsole Main : Insert code here } writeln('Selamat Datang pada aplikasi console yang pertama'); writeln('Ini adalah program pertamaku'); Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 6

write ('selamat mencoba'); end. 7. Simpan kembali dengan meng-klikmenu file >> save, atau dengan klik toolbar save. 8. Buka aplikasi Ms. Dos Prompt. Activ pada drive c kemudian kompilasi file yang baru saja anda buat. Dengan perintah DCC32 Nama_file. Seperti berikut:

9. tekan enter kemudian perhatikancomentar yang muncul. Jika tidak ada pernyataan error maka program telah terkompilasi dan menghasilkan file pertama.exe.

10. panggil file exe dengan mengetikan nama filenya lengkap dengan pathnya. Misalnya: C:\> my document/pemrograman/petama.exe. dan anda dapat lihat hasilnya seperti berikut:

Konstanta, Type data dan VariabelDi dalam program seringkali digunakan nilai tetap. Misalnya persentase PPH, sebesar 15%. Jika kita memakai nilai tersebut sebanyak 5 kali, maka kita akan menuliskan 0.15 sebanyak 5 kali. Jika suatu saat, nilai terserbut berubah, kita akan mengubah nilai tersebut sebanyak 5 kali. Hal ini akan merepotkan jika nilai tersebut dipakai lebih sering dan dalam program yang besar sehingga kita harus menelusuri program tersebut dari awal sampai akhir. Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 7

Nilai konstanta tidak dapat diubah pada saat program dieksekusi. Berbeda dengan konstanta adalah variabel yang isinya dapat diubah-ubah saat program dijalankan. Konstanta dan variabel mempunyai nama, yang biasa disebut identifier. Panjang identifier boleh berapa saja, tetapi hanya 63 karakter pertama yang dikenal. Karakter pertama dari identifier harus sebuah huruf atau garis bawah dan karakter-karakter berikutnya boleh huruf, angka atau garis bawah. Setiap variable yang kan digunakan untuk menyimpan data, akan ditentukan tipenya. Sebuah veriabel yang bertipa data numeric tidak akan dapat digunakan untuk menyimpan data huruf. Beberapa tipa data yang sangat umum digunakan adalah integer, real, char, dan string. Tipe integer dipakai untuk menyatakan bilangan yang tidak memiliki desimal. Tipe data real dipakai untuk menyimpan bilangan yang mempunyai decimal, contohnya d jam lembur dinyatakan dengan bilangan bulat. Kadang-kadang jam lembur memakai desimal. Oleh sebab itu kita harus mengubahnya dengan tipe real. Tipe character dipakai untuk menyimpan satu huruf. Sebuah karakter berukuran satu byte. String adalah sederetan karakter yang membentuk kesatuan. Tipe string lebih banyak gunanya daripada tipe karakter. String dapat dipakai untuk menyimpan data Nama, Alamat, Kota dan lain-lain. Untuk mencoba program pada Delphi buatlah aplikasi console, buatlah program dibawah ini, kompilasi dan jalankan hasilnya kemudian amati. program kedua; {$APPTYPE CONSOLE} uses SysUtils; Const PPH=0.15; Var GPTono,GPAli,GPBudi:real; GBTono,GBAli,GBBudi:real; begin { TODO -oUser -cConsole Main : Insert code here } writeln( INFORMASI GAJI PEGAWAI ); Writeln(******************************************); write(Gaji Pokok Tono : ); readln(GPTono); write(Gaji Poko Ali : ); readln(GPAli); write(Gaji Pokok Budi : ); readln(GPBudi); Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 8

GBTono:=GPtono * (1-PPH); GBAli:=GPAli * (1-PPH); GBBudi:=GPBudi * (1-PPH); Writeln(Gaji Bersih Tono : ,GBTono:10:2); Writeln(Gaji Bersih Ali : ,GBAli:10:2); Writeln(Gaji Bersih Budi : ,GBBudi:10:2); end. Setelah anda mencoba program diatas, berkutnya anda coba program berikut: program ketiga; {$APPTYPE CONSOLE} uses SysUtils; Const PPH=0.15; Var Nama, alamat: string; Umur:integer; begin { TODO -oUser -cConsole Main : Insert code here } writeln( INFORMASI DATA PEGAWAI ); Writeln(******************************************); write(Nama : ); readln(nama); write(Alamat : ); readln(alamat); write(Umur : ); readln(umur); Write(Nama Anda : ,nama); Write(Tempat Tinggal Anda: ,alamat); Write(Usia Anda : ,umur); end.

LatihanBuat Program untuk melakukan beberapa operasi matematika dan logika melalui aplikasi console. Dan jelaskan maksudnya.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

9

BAB III OBJECT PASCALPerulanganKadang-kadang kita akan menjalankan sekumpulan instruksi berulang-ulang sampai kondisi tertentu. Ada 3 perintah dasar untuk melakukan pengulangan. Perhatikan bagian-bagian berikut dan lihatlah perbedaannya. Program perulangan dengan menggunakan Repeat .. until, While do, dan For .. do. Buatlah aplikasi console dengan program berikut: program Perulangan; {$APPTYPE CONSOLE} uses SysUtils; Var Jawab:char; Nilai:integer; begin { TODO -oUser -cConsole Main : Insert code here } writeln( PERULANGAN DENGAN Repeat..Until ); writeln(******************************************); repeat writeln(ketikan X untuk erhenti); write(ketikan sembarang huruf : ); readln(jawab); until (jawab=X) or (jawab=x); readln; writeln(PERULANGAN DENGAN While..Do); nilai:=0; while nilai9 do begin write(nilai); nilai:=nilai+1; end; writeln; readln; writeln(PERULANGAN DENGAN For..Do);

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

10

for nilai :=1 to 10 do begin write (nilai); end; readln; end.

PercabanganInti dari sebuah program adalah bagaimana mengambil keputusan berdasarkan masukan yang ada. Pengambilan keputusan dilakukan dengan eksekusi kondisional. Ada 2 pernyataan kondisional dalam object pascal, yaitu If-Then-Else dan Case-Of yang disebut dengan percabangan. Program percabangan berikut dikerjakan dalam dengan aplikasi console. Program membahas tentang percabangan dengan menggunakan If.. Then.. Else.. dan menggunalan case .. Of. program percabangan; {$APPTYPE CONSOLE} uses SysUtils; Var Menu1:integer; Menu2:char; begin { TODO -oUser -cConsole Main : Insert code here } writeln(PERCABANGAN DENGAN MENGGUNAKAN If .. Then .. Else); writeln(************************************************ *); writlen(Daftar Menu Makanan Hari Ini); writlen(1 - Nasi Goreng); writlen(2 Ayam Bakar); writlen(3 Bakso Bakar); write(Silahkan Ketikan Pilihan Anda (1-2-3) = ); readln(menu1); If menu1 = 1 then Writeln(Anda pilih Nasi Goreng Ya..); Else If menu1 = 2 then Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 11

Writeln(Anda Else if menu1 Writeln(Anda Else Writeln(Anda

pilih Ayam Bakar Ya..); = 3 then pilih Bakso Bakar Ya..); Salah pilih);

writeln(PERCABANGAN DENGAN MENGGUNAKAN CASE .. OF); writeln(*****************************************); writlen(Daftar Menu Minuman Hari Ini); writlen(A Es Teh); writlen(B Es Jeruk); writlen(C Air Putih); write(Silahkan Ketikan Pilihan Anda (A-B-C) = ); readln(menu2); case menu2 A,a: B,b: C,c: end; readln; end. of Writeln(Anda minum Es Teh Ya..); Writeln(Anda minum Es Jeruk Ya..); Writeln(Anda minum Air Putih Ya..);

LatihanBuat Program untuk mengkonversi nilai dari angka menjadi huruf dengan menggunakan perulangan dan percabangan.

Array dan RecordArray merupakan sebuah tipe data yang berfungsi untuk menyimpan sekumpulan data dengan tipe tertentu dimana kumpulan data tersebut diindex dengan secara terurut. Misalnya kumpulan data integer yang berjumlah sepuluh adalah Array [1..10] of integer. Sebuah array bertipe integer maka array ini adalah tipe data yang yang merupakan kumpulan-kumpulan data yang bertipe integer.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

12

Record yang tipe data bentukan befungsi untuk menyimpan sekumpulan data yang berhungan. Data-data yang berhubungan ini bisa merupakan tipe data yang sama atau bertipe berbeda. Misalnya sebuah record yang berisi tentang nama_barang dan harga, nama_barang bertipe string dan harga bertipe integer. Record tersebut merupakan sebuah tipe data bentukan dimana tipe data-tipe data yang membentuk didalamnya adalah tipe data string dan integer. Program menggunakan array dan record, diimplementasikan dengan pemrograman Delphi aplikasi console. Buat program berikut: program ArrayRecord; {$APPTYPE CONSOLE} uses SysUtils; Type DataMhs = record NPM : string[7]; Nama : string[20]; NilaiUTS:Real; NilaiUAS:Real; End; Var ArMhs : array[1..3] of DataMhs; I : Integer; begin { TODO -oUser -cConsole Main : Insert code here } for I:=1 to 3 do Begin Writeln(Data ke =,I); Write(Masukan NPM Mhs : ); readln(ArMhs[I].NPM); Write(Masukan Nama Mhs : ); readln(ArMhs[I].Nama); Write(Masukan Nilai UTS Mhs : ); readln(ArMhs[I].NilaiUTS); Write(Masukan Nilai UAS Mhs : ); readln(ArMhs[I].NilaiUAS); End; For I :=1 to 3 do Begin Writeln( Data Mahasiswa ke = ,I); Writeln(===========================,I); Write(NPM : ,ArMhs[I].NPM); Write(Nama : ArMhs[I].Nama); Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 13

Write(Nilai UTS Write(Nilai UAS Readln; End; Readln; end.

: ArMhs[I].NilaiUTS); : ArMhs[I].NilaiUAS);

Function dan ProcedureProcedure adalah kumpulan pernyataan program yang berbentuk sebuah blok program. Blok tesebut dapat diaktifkan dengan seubah pemanggilan procedure. Perhatikan procedure berikut : Procedure TulisPesan; {Buat jendela} {Tulis pesan ke jendela} {Buang jendela} end; Function mempunyai sedikit perbedaan. Function adalah procedure yang menghasilkan sebuah nilai. Misalnya sebuah persamaan y=cos(6). Fungsi cos memakai bilangan 6 sebagai operandnya, menghitung nilai cosinus dari 6 dan mengembalikan nilainya ke persamaan. Fungsi cosinus dipanggil dari sebuah ekspresi matematika. Function di dalam program sama dengan konsep fungsi di dalam matematika, function menghasilkan sebuah nilai. Untuk menghasilkan sebuah nilai ini maka function perlu mempunyai tipe data dari nilai yang dihasilkan. Selain itu dapat juga digunakan parameter-parameter untuk memasukan nilai tertentu. Untuk lebih jelasnya coba perhatikan contoh function berikut: Function NilaiRata(a,b,c : integer) : real; Var NR : real; Begin NR:=(a+b+c)/3; NilaiRata;=NR; End;

Contoh Dalam Penerapan: program ProsedurFungsi; {$APPTYPE CONSOLE} uses SysUtils; Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 14

Var Nilai1,Nilai2,Nilai3:integer; NilaiAkhir:real; Procedure salam; Begin Writeln(------------------------------------------); Writeln( Selamat Datang di Kelas pemrograman ); Writeln(------------------------------------------); End; Function NilaiRata(a,b,c:integer):real; Var NR:real; Begin NR:=(a+b+c)/3; NilaiRata:=NR; End; begin { TODO -oUser -cConsole Main : Insert code here } salam; salam; salam; Write(Nilai ke-1 : ); readln(nilai1); Write(Nilai ke-2 : ); readln(nilai2); Write(Nilai ke-3 : ); readln(nilai3); NilaiAkhir:=NilaiRata(nilai1,nilai2,nilai3); Write(Nilai Akhir adalah : ,NilaiAkhir); Readln; end.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

15

BAB IV VISUAL COMPONENT LIBRARY (VCL)Edit, RadioButton, dan RadioGroupProgram ini merupakan program untuk membaca masukan melalui kotak edit, RadioButton,dan Radio Group, kemudian akan menampilkan data melaluikotak edit. 1. Buka aplikasi delhpi dan buat aplikasi baru. 2. Simpan aplikasi pada folder anda yang ada di my document/pemrograman melalui menu file >> save all. Untuk unit diberi nama unit4a.

3. Klik tombol save. Kemudian akan muncul kotak dialog save yang kedua untuk menyimpan project pada firektori yang sama. Beri nama project4a. kemudian klik tombol save.

file unit akan berekstensi .pas dan file project akan berekstensi .dpr. file project inilah yang nantinya akan menjadi file exe (aplikasi) yang dijalankan. 4. Tambahkan dua komponen label dari tab standart kedalam form dengan cara klik komponen edit pada tab standart kemudian klik atau drag pada form. Kemudian tambahkan juga dua komponen edit kedalam form.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

16

5. Aktifkan komponen label1 pada form dengan cara meng-klik komponen tersebut, kemudian ubah property cation pada objek inspector dengan Nama Pelanggan.

6. 7. 8. 9. 10. 11. 12. 13.

Ubah property caption dari label2 dengan Jumlah. kosongkan property text pada komponen edit1 dan edit2. tambahkan komponen GroupBox dan ubah captionnya menjadi Jenis Barang. tambahkan komponen RadioButton kedalam GroupBox, lalu ubah property captionnya menjadi Pensil. Perhatikan anda harus menempatkan radio button pada GroupBox, bukan diluarnya. tambahkan dua buah RadioButton lagi pada GroupBox dengan caption Buku dan Map. Tambahkan komponen label dan ubah property caption-nya menjadi Bayar. Tambahkan komponen edit dan kosongkan property text-nya. tambahkan komponen button dan ubah property captionnya menjadi Hitung. Tampilan sementara adalah sebagai berikut:

14. double klik komponen button1 (hitung) kemudian ubah programnya menjadi seperti berikut: procedure TForm1.Button1Click(Sender: TObject); var banyak, harga, bayar:real; begin banyak:=strtofloat(edit2.Text); if radiobutton1.Checked then harga:=1000; Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 17

if radiobutton2.Checked then harga:=1500; if radiobutton3.Checked then harga:=2000; bayar:=banyak * harga; edit3.Text:=floattostr(bayar); end; 15. jalankanprogram dan lihat hasilnya. 16. Tambahkan komponen RadioGroup kedalam form disebelah kanan group box (jenis barang). Ubah caption-nya menjadi Discont. 17. klik tombol bertanda disebelah kanan property item. Kemudian muncul String List editor. Kemudian ketikan 5 %, 10 %, dan 15 % seperti pada gambar berikut:

18. Klik OK. Kemudian ubeh property kolom menjadi 3. 19. double klik lagi pada komponen button1 (hitung) kemufian pebaiki programnya sehingga menjadi seperti berikut: procedure TForm1.Button1Click(Sender: TObject); var banyak, harga, bayar,diskon:real; begin banyak:=strtofloat(edit2.Text); if radiobutton1.Checked then harga:=1000; if radiobutton2.Checked then harga:=1500; if radiobutton3.Checked then harga:=2000; case radiogroup1.ItemIndex of 0 : diskon :=0.05; 1 : diskon :=0.10; 2 : diskon :=0.15; end; bayar:=banyak * harga* (1-diskon); edit3.Text:=floattostr(bayar); end; 20. jalankan program dan lihat hasilnya: Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 18

Menggunakan ScrollBarKomponen scrollbar adalah komponen scrollbar pada window yang digunakan untuk menggulung isi window. Event Onscroll dipakai untuk menyatakan apa yang akan dilakukan jika posisi scroll berubah. 1. Buat aplikasi baru dengan dengan manufile >> new >> Aplication. Simpan aplikasi tersebut, untuk unit berinama unit5a.pas an untuk project beri nama project5a.dpr. 2. tambahkan 4 komponen label dengan caption yang dapat dilihat pada gambar. Tambahkan 4 komponen edit, kemudian ubah property name dengan Enilai1, Enilai2, Enilai3, dan EnilaiRata. Kosongkan property text pada keempat komponen edit tersebut. 3. tambahkan 3 buah komponen scrollbar dan 2 buah komponen button. Dan ubah property caption-nya seperti pada gambar.

4. pilih Scrollbar1, aktifkan tab event pada object inspector, lalu klik ganda pada kolom OnScroll. Anda akan masuk ke code editor dan lengkapi program sehingga seperti berikut: procedure TForm1.ScrollBar1Scroll(Sender: TObject; ScrollCode: TScrollCode; var ScrollPos: Integer); begin enilai1.Text := inttostr(scrollbar1.Position); end; 5. Dengan cara yang sama lakukan langkah ke 4 untuk scrollbar2 sehingga procedurenya menjadi seperti berikut: Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 19

procedure TForm1.ScrollBar2Change(Sender: TObject); begin enilai2.Text := inttostr(scrollbar2.Position); end; 6. demikian juga untuk scrollbar3, ubah procedurenya sehingga menjadi seperti berikut: procedure TForm1.ScrollBar3Change(Sender: TObject); begin enilai3.Text := inttostr(scrollbar3.Position); end; 7. double klik komponen button1 (hitung) kemudian buat procedure seperti berikut: procedure TForm1.Button1Click(Sender: TObject); begin EnilaiRata.Text:=floattostr((strtoint(enilai1.Text)+strto int(enilai2.Text)+ strtoint(enilai3.Text))/3); end; 8. double klik komponen button2 (keluar) kemudian ubah procedurenya menjadi berikut: procedure TForm1.Button2Click(Sender: TObject); begin application.Terminate; end; 9. jalankan program dan amati hasilnya.

CheckBox, Memo, ListBox, dan ComboBox.Checkbox memberikan dua pilihan (bahkan tiga pilihan ataulebih) kepada pemakai. - ubah property checked menjadi True agar checkbox dipilih secara default. - Ubah Property AllowGrayed agar checkbox mempunyai tiga pilihan: checked, Unchecked, grayed. - Property state untuk menyatakan apakah checkbox dalam keadaan checked (cbChecked), unchecked (cbUnchecked), atau grayed (cbGrayed). Memo dipakai untuk memasukan data yang lebih dari satu baris. Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 20

Listbox untuk menampilkan daftar dan dapat dipilih item-itemnya. ComboBox mengkombinasikan kotak edit dan listbox. 1. Buat desain dengan menggunakan 1 komponen memo, 1 komponen combobox, 1 komponen listbox, 1 komponen groupbox, 3 komponen checkboc, dan 3 komkponen button. Desain seperti pada gambar berikut:

2. ubah property dari masing-masing komponen sesuai dengan tabel berikut: Komponen Property value Form Caption Menggunakan Memo, Combobox, dll CheckBox1 Caption Teks warna merah CheckBox2 Caption Teks miring CheckBox3 Caption Teks cetak tebal Button1 Caption Isi Memo Name BtIsi Button2 Caption Ubah font Name BtUbah Button3 Caption Keluar Name BtKeluar Combobox1 Text Dikosongkan GroupBox1 Caption Font 3. isikan empat pilihan pada combobox melalui property items (klik pada tombol bertanda ) mencoba Delphi Komponen Memo Listbox dengan 3 item Checkbox mempunyai 3 state 4. isikan pilihan-pilihan berikut pada komponen listbox melalui property items: Kotak memo warna putih Kotak memo warna biru Kotak memo warna kuning 5. isikan procedure pada btIsi pada event Onclick sebagai berikut: Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 21

procedure TForm1.btisiClick(Sender: TObject); begin memo1.Clear; memo1.Lines.Add(combobox1.Text); memo1.Lines.Add('String dari list box Inttostr(listbox1.ItemIndex+1)); case listbox1.ItemIndex of 0 : memo1.Color:=clwhite; 1 : memo1.Color:=claqua; 2 : memo1.Color:=clYellow; end; end;

#'

+

6. isikan procedure pada btUbah dengan procedure berikut: procedure TForm1.btubahClick(Sender: TObject); begin if checkbox1.State=cbChecked then form1.Font.Color:=clred else form1.Font.Color:=clWindowText; form1.Font.Style:=[]; if checkbox2.State=cbChecked then form1.Font.Style :=[fsItalic]; if checkbox3.State=cbChecked then form1.Font.Style :=form1.Font.Style+[fsbold]; end; 7. procedure untuk btKeluar: procedure TForm1.btKeluarClick(Sender: TObject); begin application.Terminate; end; 8. jalankan program dan amati hasilnya.

Menggunakan Main menu dan Popup Menu dan multi formMain menu adalah menu yang utama yang ada pada form. Komponen yang digunakan komponenmain menu. Popup menu merupakan menu yang local yang ada pada mouse. Popup menu akan muncul ketika klik kanan pada mouse. Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 22

1. buka palikasi baru dan simpan pada direktori anda. Untuk unit beri nama unit6a1.pas, sedangkan untuk project berinama project6a. 2. tambahkan komponen main menu pada form, kemudian double klik komponen tersebut hingga muncul menueditor lalu ketikan pilihan pada property caption lalu tekanenter. 3. ketikan lagi form2 lalu tekan enter kemudian ketikan lagi form3 lalu tekan enter, ketikan tanda lalu enter, kemudian ketikan keluar lalu enter. Mainmenu akan menjadi seperti berikut:

4. Klik sebelah kanan menu pilihan kemudian ketikan setting warna kemudian tekan enter. Ketikan lagi warna merah lalu tekan enter, ketikan lagi warna hijau lalu tekan enter menu menjadi seperti berikut:

5. tutup menu editor tersebut dan kembali ke form desain, disana sudah terdapat menu yang barusaja dibuat. 6. tambahkan komponen PopupMenu kedalam form. Double klik komponen tersebut sehingga muncul popup menu editor. 7. ketikan ke form2 lalu tekan enter, ketikan lagi ke form3 lalu tekan enter, ketikan keluar lalu tekan enter. Popup menu editor akan tampak seperti berikut:

8. Tambahkan form melalui menu file >> New >> form. Simpan dan beri nama unitnya dengan unit6a2.pas. kemudian tambahkan komponen button pada form2 dengan property caption yaitu kembali. 9. double klik komponentersebut kemudian ubah procedurenya menjadi berikut: procedure TForm2.Button1Click(Sender: TObject); begin close; end; Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 23

10. dengan cara yang sama tambahkan form ketiga lalu simpan dengan nama unit yaitu unit6a3.pas. tambahkan juga komponen button yang sama dengan procedure sebagai berikut: procedure TForm3.Button1Click(Sender: TObject); begin close; end; 11. kembali ke form1 kemudian klik menu pilihan >> form2 pada desain form1 kemudian ubah procedure menjadi: procedure TForm1.Form11Click(Sender: TObject); begin form2.show; end; 12. kembali ke form1 kemudian klik menu pilihan >> form3 pada desain form1 kemudian ubah procedure menjadi: procedure TForm1.Form21Click(Sender: TObject); begin form3.show; end; 13. kembali ke form1 kemudian klik menu pilihan >> keluar pada desain form1 kemudian ubah procedure menjadi: procedure TForm1.Keluar1Click(Sender: TObject); begin application.Terminate; end; 14. kembali ke form1 kemudian klik menu Setting warna >> warna biru pada desain form1 kemudian ubah procedure menjadi: procedure TForm1.Warnabiru1Click(Sender: TObject); begin form1.Color:=clblue; end; 15. kembali ke form1 kemudian klik menu Setting warna >> warna hijau pada desain form1 kemudian ubah procedure menjadi: procedure TForm1.WarnaHijau1Click(Sender: TObject); begin form1.Color:=clLime; end; 16. kembali ke form1, double klik komponen popup menu hingga muncul jendela editor, kemudian double klik pada menu form2 dan ubah procedurenya menjadi berikut: procedure TForm1.Keform21Click(Sender: TObject); begin Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 24

form2.show; end; 17. kembali ke form1, double klik komponen popup menu hingga muncul jendela editor, kemudian double klik pada menu form3 dan ubah procedurenya menjadi berikut: procedure TForm1.Keform31Click(Sender: TObject); begin form3.show; end; 18. kembali ke form1, double klik komponen popup menu hingga muncul jendela editor, kemudian double klik pada menu form3 dan ubah procedurenya menjadi berikut: procedure TForm1.keluar2Click(Sender: TObject); begin application.Terminate; end; 19. klik pada form1 kemudian ubah property PopupMenu dengan Popup menu1. 20. jalankan program dengan menekan f9, jika muncul error dengan informasi bahwa unit form1 dan form2 belum dideklarasikan, klik tombol yes untuk mendeklarasikan secara otomatis. Kemudian jalankan program sekali lagi.

21. jalankan program dan amati hasilnya. Adna dapat melakukan operasi melalui main menu atau dengan klik kanan mouse pada form1. Latihan: Buat program untuk pemilihan menu makanan dengan checkbox, kemudian hitung berapa jumlah uang yang hasrus dibayar dari menu yang dipilih.

Menggunakan MaskEdit dan Bitbtn1. Buka aplikasi baru pada form kemudian tambahkan komponen label dan bitbtn. 2. Ubah property caption dari label dengan masukan tanggal (mm/dd/yy). Kemudian 3. klik komponen maskedit1 pada form kemudianklik tanda pada property EditMask sehingga muncul Input Mask Editor. Pada sample mask pilih date, kemudian klik OK.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

25

4. Tambahkan 2 komponen bitbtn. Klik komponen bitbtn1 kemudian ubah property kind dengan BkKind. Kemudian double klik dan ubah procedurenya menjadi: procedure TForm1.BitBtn1Click(Sender: TObject); begin messagedlg('tanggal dimasukan'+maskedit1.Text,mtinformation,[mbOk],0); end; 5. klik komponenbitbtn2 kemudian ubah property kind menjadi bkClose. 6. jalankanprogram dan amati yang yang trjadi ketika anda melakukan operasi-operasi pada program.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

26

BAB V EVENT DRIVEN DAN EXCPTION Program yang Event-DrivenApakah program yang event driven? Program yang event driven terdiri dari blok-blok perintah yang dijalankan jika terjadi sebuah event atau aksi. Contoh-contoh event adalah klik pada mouse, menekan tombol pada keyboard dan memulai aplikasi. Pada lingkungan grafis, beberapa aplikasi dijalankan bersama-sama,model event driven sangat efektif untuk memberi respon pada masukan user. Aplikasi yang event-drivent tidak akan mengerjakan apa-apa, jika tidak terjadi event. Oleh sebab itu program event-driven tidak mempunyai titik awal dan titik akhir yang jelas. Program hanya perlu mengetahui respon-respon yang akan diberikan pada setiap event. Pada aplikasi basis Windows, kita tidak akan mengetahui apakah apakah user akan memasukkan sebuah kalimat, atau memilih sebuah menu atau klik pada mouse. Apapun aksi yang dilakukan user, program harus meresponi setiap event. Event-event yang sudah didefinisikan dapat anda lihat pada tab Events pada object inspector. Anda juga dapat menambahkan event.

Event yang Telah DidefinisikanUntuk mengetahui lebih jelas bagaimana hubungan antara event dan komponen, kita akan melihat event-event tersebut dari sebuah komponen umum, yaitu Button. OnClick dipanggil jika user mengklik pada sebuah button. OnDragDrop dipanggil jika sebuah object di-drag ke sebuah button dan di-drop. OnDragOver dipanggil jika sebuah object di-drag ke sebuah button. OnEndDrag dipanggil jika sebuah button telah selesai di-drag. OnEnter dipanggil jika sebuah button menerima fokus. OnExit dipanggil jika button tidak lagi terfokus. OnKeyDown menyatakan ada sebuah tombol yang ditekan, termasuk tombol yant tidak dicetak misalnya Shift, Alt dan Insert. Event handler ini dipanggil hanya jika button difokus. OnKeyPress dipanggil jika sebuah tombol yang tercetak ditekan (tidak termasuk Shift, Alt dan Insert). Event handler ini dipanggil hanya jika button difokus. OnKeyUp dipanggil jika tombol dilepaskan pada saat button difokus. OnMouseDown dipanggil jika salah satu tombol mouse ditekan pada saat button difokus. OnMouseMove dipanggil jika mouse bergerak di atas button. OnMouseUp dipanggil saat user melepaskan tombol mouse, dan button difokus. OnStartDrag dipanggil saat sebuah button mulai di-drag.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

27

Program Even Driven1. Buat aplikasi dengan komponen-komponen: 2 buah label, 2 maskEdit dan sebuah button.

2. Ubah property caption dari kedua label menjadi Tanggal hari ini dan Tanggal akhir bulan. 3. ubah property name dari kedua maskedit menjadi ETgl1 dan Etgl2, dan ubah property EditMask dari keduanya menjadi: !00/00/0000;1;_ 4. aktifkan komponen form lalu pada property ActiveControl pilih button1. Property ini digunakan untuk memberikan focus pada button1 ketika form diload. 5. klik ganda pada tempat form untuk memberikan progeam pada event OnFormCreate dengan mengisi tanggal dari system. procedure TForm1.FormCreate(Sender: TObject); begin etgl1.Text:=datetostr(date); end; 6. ketika anda meubah focus ke etgl1 (dengan klik komponen tersebut saat aplikasi berjalan) akan muncul pesan. Program diketikan pada event OnEnter dari komponen Etgl1. procedure TForm1.Etgl1Enter(Sender: TObject); begin messagedlg('tanggal diambil system',mtInformation,[mbok],0) end;

dari

7. jika fokus dipindah dari etgl1 ke komponen lain, event ini adalah OnExit dari komponen etgl1, program sebagai berikut: procedure TForm1.Etgl1Exit(Sender: TObject); var MTGstr:string; MTg:tdateTime; tahun,bulan,tanggal:word; begin MTg :=strtodate(Etgl1.Text); decodedate(MTG,tahun,bulan,tanggal); if bulan = 12 then begin bulan:=1; tahun:=tahun+1; end else bulan:=bulan+1; Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 28

Mtg:=strtodate(floattostr(bulan)+'/'+'01/'+floattostr(tah un))-1; etgl2.Text:=datetostr(Mtg); end; tanggal akhir bulan merupakan tanggal 1 bulan berikutnya dikurangi 1 hari. Ha; ini dinyatakandalam potongan program berikut dalamformat (mm/dd/yyyy): Mtg:=strtodate(floattostr(bulan)+'/'+'01/'+floattostr(tah un))-1; 8. double klik komponen button1 kemudian masukan kode program berikut agat saat button1 diklik event OnExit pada Etgl1 akan dijalankan: procedure TForm1.Button1Click(Sender: TObject); begin Etgl1exit(sender); end; 9. jalankan program dan amati hasilnya.

Exception

Komputer tidak pernah salah, dalam arti ia mengerjakan segala sesuatu yang diperintahkan padanya. Tetapi, pemrogram atau pemakai sering kali secara tidak sengaja memberikan perintah yang salah. Terjadilah exception! Exception terjadi pada saat runtime bukan pada saat kompilasi. Blok dalam try-except dipakai untuk mendefinisikan program yang akan dijalankan jika terjadi kesalahan di dalam blok. Bentuk umumnya : Try { Program yang dijalankan } except { Program yang dijalankan jika terjadi kesalahan } end ;

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

29

Kadang kala kita perlu membedakan kesalahan yang terjadi. Untuk memeriksa exception, kita memakai pernyataan on. Bentuk umumnya : On do On do Else { program yang dijalankan jika kesalahan tidak tertangani pada penganganan di atas }

Program Exception1. Buat form desain seperti berikut:

2. Ubah masing-masing property dari komponen diatas sesuai dengan tabelberikut: Komponen Property Value Label1 Caption Bilangan1 Label2 Caption Bilangan2 Label3 Caption Hasil Button1 Caption Hitung Bagi 3. Kosongkan property text untuk komponen edit1, edit2, dan edit3. 4. double klik button1 kemudian masukan kode program berikut: procedure TForm1.Button1Click(Sender: TObject); var a,b:integer; hasil:real; begin try a:=strtoint(edit1.Text); b:=strtoint(edit2.Text); hasil:=a/b; edit3.Text:=floattostr(hasil); except messagedlg('pembagi tdk boleh kosong nol',mtinformation,[mbok],0); end; end;

atau

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

30

5. Jalankan Program dan amati hasilnya dengan mengisikan pada kotak edit pertama tapi mengosongkan pada kotak edit kedua.

LatihanBuat program untuk menerima masukan berupa username dan password, password yang diketikan akan muncul dengan tanda *, program dilengkapi dengan bitbtn.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

31

BAB VI PEMROGRAMAN GARFIS MULTIMEDIAElemen GrafikKoordinat Setiap komponen visual mempunyai property top dan left. Nilai yang tersimpan dalam property ini menyatakan dimana komponen tersebut diletakkan dalam form. Koordinat bersifat relatif. Misalnya anda berada di lantai 20 dari sebuah gedung. Berapa ketinggian bahu anda? Jawabannya relatif. Anda dapat mengukurnya dari tanah atau dari ubin dilantai 20. koordinat di dalam Delphi juga relatif. Berapa koordinat sebuah komponen? Anda akan menyatakan koordinat komponen tersebut pada container-nya. Jika sebuah container adalah form, maka koordinat tersebut adalah relatif terhadap form. Sedangkan koordinat form mengacu pada layar. Top menyatakankoordinat y (vertikal), dalam satuan pixel. Sedangkan left menyatakan koordinat x (horizontal). Top dan left dapat dipakai untuk mengubah posisi dari sebuah komponen. Canvas Canvas adalah area gambar abstrak dari objek atau komponen-komponen grafik. Canvas mempunyai property, event, dan method yang dapat dipakai untuk membuat gambar dengan cara: Menyatakan tipe brush, pen, dan font yang dipakai. Menggambar dan mengisi berbagai bentuk dan garis. Menulis teks dan lain-lain Jika bekerja dengan grafik ada dua istilah penting yang harus dibedakan yaitu drawing (menggambar) dan painting (mengecat). Drawing adalah menciptakan sebuah elemen garfik, seperti garis atau bentuk. Di program, anda menggambar sebuah objek dengan menyatakan posisinya pada canvas, dan memanggil sebuah method drawing. Painting adalah membuat tampilan objek. Biasanya painting melibatkan drawing. Pixel Pada dasarnya semua operasi grafik adalah mengubah warna pixel pada area gambar. Pixel merupakan titik-titikpada layar monitor yang mempunyai kerapatan tetentu. Kerapatan pixel ini disebut dengan resolusi. Pen Property pen pada control canvas merupakan cara untuk memunculkan garis, termasuk garisgaris yang digambar pada bagian luar dari suatu bentuk (shape). Menggambar garis lurus pada dasarnya hanya merubah kelompok pixels yang menghubungkan dua titik. Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 32

Pen sendiri mempunyai empat property yang dapat Anda ubah: color, width, style, dan mode Property Color: untuk merubah warna pen Property Width: untuk merubah lebar atau tebal dari pen Property Style: untuk merubah style dari pen Property Mode: untuk merubah mode dari pen. Nilai dari property-property diatas menentukan bagaimana pen merubah pixels dalam garis. Secara default, setiap pen dimulai dengan warna hitam (black), dengan lebar 1 pixel, style solid, dan mode yang dikopi dengan penulisan ulang apapun yang ada pada canvas. Untuk merubah lebar pen, masukkan Nilai numeric pada property width dari pen. Misalkan Anda mempunyai trackbar pada pen toolbar untuk mengatur nilai width pada pen, kemudian Anda akan mengupdate sebuah label untuk menunjukkan nilai tersebut. Gunakan trackbar position untuk menentukan lebar pen, Anda dapat mengupdate lebar pen setiap saat posisi berubah. Property style pada pen mengijinkan anda untuk mengatur garis solid, garis putus-putus, garis titik-titik, dan yang lainnya. Property mode pada pen digunakan untuk menspesifikasikan berbagai cara untuk mengkombinasikan warna pen dengan warna pada canvas. Sebagai contoh, pen dapat selalu berwarna hitam, sebagai kebalikan dari warna background canvas, kebalikan dari warna pen dan lain sebagainya.

Brush Property brush dari canvas digunakan untuk mengontrol cara mengisi area, beserta interior dari suatu bentuk (shape). Mengisi area dengan brush adalah dengan cara merubah besar nomer batasan pixel dalam spesifikasi cara. Brush mempunyai 3 property yang dapat Anda manipulasi: Property Color: untuk merubah warna isi Property Style: untuk merubah style dari brush. Property Bitmap: menggunakan bitmap untul sebagai patern dari brush Nilai dari property tersebut menentukan cara canvas mengisi bentuk atau area yang lain. secara default, setiap brush memulai dengan warna putih (white), dengan style solid dan tidak ada pattern bitmap. Warna brush menentukan warna apa yang akan digunakan canvas dalam mengisi suatu bentuk. Untuk merubah warna isi, masukkan value ke property color pada brush. Brush digunakan untuk warna background dalan menggambar text dan garis jadi. Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 33

Style brush menentukan pattern (pola) apa yang akan digunakan canvas untuk mengisi suatu bentuk. Style yang ditentukan sebelumnya adalah solid, tidak ada warna, dan berbagai garis dan mengkosongkan patern. Untuk merubah style pada brush, aturlah property style dengan salah satu value yang telah ditentukan: bssolid, bsclear, bshorizontal, bsvertical, bsFDiagonal, bsBDiagonal, bsCross, atau bsDiagCross.

Menggunakan Property Pen1. Buka program Delphi dan buatlah aplikasi baru. 2. Tambahkan satu komponen label kemudian ubah property caption-nya menjadi warna pen. 3. Tambahkan komponen ColorGrid dari halaman tab sample pada component pallete. 4. Ubah property name dari colorgrid menjadi pencolor. 5. Klik tab event pada object inspector, kemudian double klik pada kolom Onclick. 6. Ketikkan beberapa kode program sehingga procedure berubah menjadi berikut: procedure TForm1.pencolorClick(Sender: TObject); begin Canvas.Pen.Color := PenColor.ForegroundColor; end; 7. Tambahkan komponen trackbar dari halaman tab win32 pada component pallete dan satu komponen label dari tab standard. Pada komponen label ubah property name menjadi pensize. Pada komponen trackbar ubah property name menjadi penwidth, kemudian double klik komponen tersebut dan ubah procedure-nya menjadi berikut: procedure TForm1.penwidthChange(Sender: TObject); begin Canvas.Pen.Width := PenWidth.Position; { set the pen width directly } PenSize.Caption := IntToStr(PenWidth.Position); end; 8. Tambahkan enam buah komponen radiobutton dari halaman tab standard. Dan ubah masing-masing property name-nya menjadi: solidpen, dashpen, dotpen, dashdotpen, dashdotdotpen, clearpen. 9. Pilih keenam komponen radiobutton tersebut dengan cara memilih salah satu dengan pointer mouse kemudian memilih komponen yang lainnya bersamaan dengan menekan tombol shift pada keyboard. 10. Setelah keenam komponen radiobutton tersebut terpilih, klik object inspector pada tab even. Pada kolom OnClick ketikan setpenstyle kemudian ketikkan ketikkan beberapa kode sehingga procedure berubah menjadi seperti berikut: procedure TForm1.setpenstyle(Sender: TObject); begin with Canvas.Pen do begin Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 34

if Sender = SolidPen then Style := psSolid else if Sender = DashPen then Style := psDash else if Sender = DotPen then Style := psDot else if Sender = DashDotPen then Style := psDashDot else if Sender = DashDotDotPen then Style := psDashDotDot else if Sender = ClearPen then Style := psClear; end; end; 11. Tambahkan satu buah komponen button dan ubah property caption-nya menjadi gambar. 12. Double klik komponen button1 tersebut dan ubah procedure-nya menjadi berikut: procedure TForm1.GambarClick(Sender: TObject); begin canvas.MoveTo(50,50); canvas.LineTo(250,50); end; 13. Jalankan program dengan menekan tombol F9 pada keyboard dan lihat hasilnya seperti pada gambar berikut:

Menggunakan Property Brush1. Buatlah aplikasi baru dengan desain form seperi berikut ini:

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

35

2. Ubahlah beberapa property sesuai dengan table berikut:

KomponenLabel1 Label2 ColorGrid RadioButton1 RadioButton2 RadioButton3 RadioButton4 RadioButton5 RadioButton6 RadioButton7 RadioButton8 Button1

Property Caption = Brush Color Caption = Brush Style Name = brushcolor Name = solidbrush Name = cleasrbrush Name = horizontalbrush Name = verticalbrush Name = fdiagonalbrush Name = bdiagonalbrush Name = crossbrush Name = diagcrossbrush Caption = gambar

3. Pilih komponen brushcolor (komponen dari ColorGrid) kemudian klik object inspector pada tab event. Double klik pada kolom OnClick dan masukkan beberapa kode sehingga procedure menjadi seperti berikut: procedure TForm1.brushcolorClick(Sender: TObject); begin Canvas.Brush.Color := BrushColor.ForegroundColor; end; 4. Pilih delapan komponen radio button dengan cara men-klik satu persatu komponen tersebut bersamaan dengan menekan tombol shift pada keyboard. 5. Klik objeck inspector pada tab event. Pada kolom OnClik ketikan setbrushstyle lalu tekan enter dan ubah procedure-nya menjadi seperti berikut: procedure TForm1.setbrushstyle(Sender: TObject); begin with Canvas.Brush do begin if Sender = SolidBrush then Style := bsSolid else if Sender = ClearBrush then Style := bsClear else if Sender = HorizontalBrush then Style bsHorizontal else if Sender = VerticalBrush then Style bsVertical else if Sender = FDiagonalBrush then Style bsFDiagonal else if Sender = BDiagonalBrush then Style bsBDiagonal else if Sender = CrossBrush then Style := bsCross Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

:= := := :=

36

else if bsDiagCross; end; end;

Sender

=

DiagCrossBrush

then

Style

:=

6. Double klik pada komponen button1 kemudian ketikkan beberapa kode program sehingga procedure berubah seperti berikut: procedure TForm1.Button1Click(Sender: TObject); begin Form1.Canvas.FillRect(Rect(100,25,225,150)); end; 7. Jalankan program kemudian lihat hasilnya seperti pada tampilan berikut:

Memainkan SuaraMemainkan suara didalam Delphi dapat digunakan fungsi PlaySound( ). Fungsi ini dapat digunakan untuk memainkan suara dalam bentuk file wave. Contohnya adalah sebagai berikut: Begin PlaySound(c:\windows\media\The Sound,0,SND_SYNC); End. Microsoft

Dari contoh diatas ada beberapa parameter yaitu: Parameter pertama berupa nama file, alamat dimemori, atau sebuah eventsystem. Parameter kedua dipakai untuk menyatakan dimana suara akan disimpan didalam file sumber. Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 37

Parameter ketiga menyatakan bagaimana suara dimainkan. Konstanta untuk parameter ii disimpan dalam unit mmsystem.

File Media Ada beberapa jenis file multimedia dengan format yang berbeda-beda diantaranya adalah sebagai berikut: File WAV Fiel .wav (waveform) adalah fiel untuk menyimpan suara yang direkam dengan teknologi dari Microsoft. Dalam lingkungan windows format ini telah diakui sebagai format audio standar. File MIDI File midi (musical instruments gidital interface) sama seperti file .wav yang berakhiran .mid juga berhubungan denga suara. Dibandingkan dengan file wav adalah ukurannya yang lebih kecil, tetapi tidak semua suara dapat disimpan dalam format file .mid, sebagai contoh suara anjing menggonggong atau singa mengaum tidak bisa disimpan dalam file midi. File MP3 Adalah file dengan format perekaman suara sigital yang dikompresi. File musik MP3 direkam pada 128Kbps yang akan memakan 1 MB untuk suara permenitnya. Untuk memainkan file MP3 dibutuhkan media player, salah satunya dimiliki oleh program visual basic yaitu multimedia MCI. File AVI Fiel avi (audio video interleaving) merupakan file standart yang dimiliki oleh system operasi Microsoft windows untuk memainkan data video dan audio secara digital. File avi adalah file hasil kompresi gambar-gambar dan atau suara digital tyang terangkai dan membantuk file baru yang dapat dimainkan secara bergerak dan bersuara. File DAT File DAT (Digital Audio Tape) adalah file yang diproses dengan peralatan digital tape. Ukuran dari file ini cukup besar dibandingkan dengan file AVI, tetapi gambar yang dihasilkan lebih bagus.

Memainkan VideoDelphi dapat membangun aplikasi yang dapat memainkan video dengan adanya beberapa komponen pendukungnya. Untuk memainkan video ini dapat digunakan komponen Animate atau komponen MediaPlayer. Memiankan video dengan komponen Animate hanya dapat menampilkan video tanpa suara, sedangkan kalau menggunakan komponen MediaPlayer, video dapat dimainkan secara optimal.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

38

Pemrograman multimedia1. Buatlah aplikasi baru, kemudian tambahkan komponen mediaplayer pada form. 2. Tambahkan komponen DriveComboBox, DirectoryListBox, dan Filelistbox dari halaman tab Win 3.1 pada component pallete. 3. Tambahkan komponen label dari halaman tab standard kemudian aturlah letak komponen-komponen tersebut seperti gambar berikut:

4. Klik komponen DriveComboBox1 kemudian isilah property Dirlist dengan DirektoryListBox1. 5. Klik komponen DirectoryListbox1 kemudian isilah propery filelist dengan filelistbox1. 6. Ubah property caption pada komponen label1 dengan Daftar File. 7. Klik komponen filelistbox1 kemudian klik tab event pada object inspector. Double klik pada kolom OnClick kemudian ubah procedure tersebut menjadi: procedure TForm1.FileListBox1Click(Sender: TObject); begin mediaplayer1.Close; mediaplayer1.FileName:=filelistbox1.FileName; mediaplayer1.Open; end; Procedure ini akan menutup mediaplayer kemudian akan memilihkan file multimedia dan mendaftarkannya pada kontrol mediaplayer sehingga media player siap untuk dimainkan. File-file yang siap dipilih adalah file-file multimedia yang terinstall.

Latihan Buat Program dengan menggunakan fungsi-fungsi shape yang lain.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

39

BAB VII PEMROGRAMAN DATABASEDatabase digunakan untuk menyimpan data sehingga dapat dimanipulasi dengan mudah. Tanpa adanya database, programmer akan membuat procedure-procedure yang rumit untuk memanipulasi data. Delphimenyediakan komponen-komponen yang dipakai untuk mengakses table dan method untuk memanipulasi record. Delphi memberikan fasilitas yang compleks. Dalam membangun aplikasi database, Delphi menyediakan dukungan untuk berbagai driver standar yang banyak. Dengan adanya dukungan yang banyak ini Delphi daoat digunakan untuk membangaun database dengan model stand alone (berdiri sendiri), file share (berbagi), dan database client/server. Selain itu Delphi juga memberikan dukungan untuk database dengan aristektur one tire, two tire, dan multi tire.

Komponen-Komponen DatabaseAplikasi database dibangun dari elemen user interface, komponen yang mempresentasikan informasi database, dan komponen yang menghubungkan ke sumber database. User interface form Merupakan form sebagai user interface yaitu komponen yang menjadi antar muka untukberhubungan dengan user. Komponen Database Komponen database ini adalah komponen yang biasanya digunakan untuk behubungan dengan database. Untuk model database yang berbeda akanmenggunakan komponen database yang berbeda. Misalnya dengan menggunakan ADO atau dengan menggunakan interbase, atau DBExpress. Komponen Dataset (Tabel, Query, dll) Komponen dataset ini adalah komponen yang digunakan untuk berhubungan dengan objek database misalnya table atauuntuk membentuk query yang dapat menghasilkan suatu data tetentu tertentu dari suatu database. Dengan dataset maka data pada database dapat dimanipulasi. Komponen yang biasa dipakai adalah komponen table dimana komponen ini digunakan untuk berhubungan dengan table tertentu dalam suatu database. Anda dapat melakukan seting pada property tablename, dan property databasename. Selain komponen table, komponen yang lain yang biasa digunkan adalah komponen query. Komponen ini digunakan untuk mengambil data dari satu atau beberapa table dengan menggunakan statemen SQL.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

40

Komponen Data Source Komponen data source merupakan komponen yang digunakan untuk menghubungkan antara komponen table dengan komponen datacontrol. Property yang dapat diisi adalah property dataset diisi dengan nama komponen table. Komponen Data control Adalah komponen yang berfungsi untuk menampilkan data. Dengan komponen ini data dimungkinkan untuk dapat ditampilakn melalui kotak edit, text, grid, atau yang lainnya. Index Index adalah urutan dari record-record berdasarkan field tertentu. Beberapa driver database mendefinisikan sebuah key otomatis untuk membuat index untuk field tersebut. Keuntungan index adalah lebih cepat dalam mencari dan mengurutkan berdasarkan kolom yang diindex. Operasi Database Operasi database adalah kegiatan-kegiatan yang dilakukan untuk memanipulasi data. Operasioperasi ini misalnya memasukan data, mengganti data, menghapus data, dan merefresh data. Untuk melakukan operasi-operasi tersebut dapat dilakukan dengan memanggil methodmethod dari suatu dataset yaitu tabel atau query. Method-method yang dipanggil adalah insert untuk memasukan data, edit untuk mengganti data, delete untuk menghapus data, post untuk mengirimkan data, dan refresh untuk menyegarkan kembali data. Operasi Navigasi Operasi navigasi adalah operasi yang digunakan untuk memindahkan penunjuk record. Dengan adanya operasi navigasi ini penunjuk record bisa berada di bagian pertama atau bagian terakhir. Untuk manjalankan operasi ini dapat dilakukan dengan memanggil method first, next, previous, last dari komponen dataset yaitu komponen tabel dan atau komponen query. Laporan Laporan merupakan hasil akhir yang diharapkan dari suatu database. Laporan ini akan sesuai dengan permintaan dan dapat dicetak ke kerta melalui printer. Untuk membuat laporan dapat digunakan komponen-komponen yang ada pada halaman tab Qreport. Komponenkomponen yang biasa digunakan adalah Quickrep, Qrband, QrLabel, dan QrDbText. Pencarian Data Database digunakan untuk menyimpan data dalam jumlah yang besar. Jika data yang ada hanya 10 atau sampai 50 maka untuk mencari tidak akan ada kesulitan, tetapi bagaimana jika data yang ada dalam database jumlahnya mencapai ribuan bagaimana untuk mencari data. Salah satu yang dapat dilakukan untuk mencari data adalah dengan indeks yang sudah ada, dengan catatan data yang dicari masih dalam bentuk data asli bukan dalam manipulasi data. Bagaimana jika data yang akan dicari dalam bentuk manipulasi data, untuk mencarinya bisa

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

41

digunakan dengan statemen SQL dimana statemen SQL ini dapat disertakandalam komponen query. Konsep dasar dari statemen SQL adalah sebagai berikut:

Select nama_filed from nama_tabel where kondisiNama field diisi dengan nama-nama field yang akan ditampilkan, jika lebih dari satu dipisahkan dengan tanda koma (,). Nama tabel diisi dengan nama tabel-tabel dimana field yang akan ditampilkan berasal. Jika lebih dari satu digunakan tanda koma (,) untuk memisahkan. Kondisi adalah suatu kondisi yang harus dipenuhi sebagai syarat suatu data akan ditampilkan.

Menggunakan komponen table1. Buka aplikasi baru dan tambahkan komponen table dari tab BDE pada component pallete. 2. Ubah property DatabaseName dari komponen table1 menjadi DBDEMOS. 3. Ubah property TableName dari komponen Table1 menjadi Biolife.db, dan ubah property active menjadi true. 4. Klik kanan pada komponen table1 kemudian pilih field editor sehingga muncul kotak field editor dari table1. 5. Klik kanan pada kotak tersebut dan pilih Add all Filed sehingga semua field masuk kedalam kotak tersebut. 6. Blok semua field tersebut dan drag kedalam form. 7. Atur letak komponenya sehingga membentuk desain seperti berikut, dan ubah property stretch dari DBImage1 menjadi true:

8. Tambahkan komponen DbNavigator dari tab DataControl pada component pallete, letakan pada bagian paling bawah, dan ubah property datasource-nya menjadi Datasource1. 9. Jalankan program dan lihat hasilnya.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

42

Mengganti DB Navigator dan button1. Hapus komponen DBNavigator1 dari form desain kemudian tambahkan 9 komponen button pada bagian bawah dengan posisi sebagai berikut:

2. Ubah property caption dari komponen button1 dengan Pertama kemudian masukan buat prosedur untuk even Onclick dengan kode program: table1.First; 3. Ubah property caption dari komponen button2 dengan Sebelum kemudian masukan buat prosedur untuk even Onclick dengan kode program: table1.Prior; 4. Ubah property caption dari komponen button3 dengan Sesudah kemudian masukan buat prosedur untuk even Onclick dengan kode program: table1.Next; 5. Ubah property caption dari komponen button4 dengan Terakhir kemudian masukan buat prosedur untuk even Onclick dengan kode program: table1.Last; 6. Ubah property caption dari komponen button5 dengan Tambah kemudian masukan buat prosedur untuk even Onclick dengan kode program: table1.Insert; 7. Ubah property caption dari komponen button6 dengan Hapus kemudian masukan buat prosedur untuk even Onclick dengan kode program: table1.Delete; 8. Ubah property caption dari komponen button7 dengan Edit kemudian masukan buat prosedur untuk even Onclick dengan kode program: table1.Edit; 9. Ubah property caption dari komponen button8 dengan Batal kemudian masukan buat prosedur untuk even Onclick dengan kode program: table1.Cancel; 10. Ubah property caption dari komponen button9 dengan Simpan kemudian masukan buat prosedur untuk even Onclick dengan kode program: table1.Post; 11. Jalankan Program dan lihat hailnya.

Membuat Table1. Buat aplikasi baru dan buka database desktop melalui menu tools >> database desktop. 2. Dari window database desktop klik menu file file >> new >> create table. Setelah muncul kotak dialog create table pilih paradox 7 kemudian klik OK.

3. Setelah muncul kotak dialog create table, masukan field-field tabel seperti berikut:

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

43

4. Klik tombol save as kemudian simpan di folder anda dan berinama mhs. 5. buka tabel untuk mengisi data dengan cara klik menu file>>Open Tabel, pilih tabel mhs dari folder anda. Setelah tabel terbuka klik menu table >> edit data dan masukan data berikut:

6. dengan cara yang sama buat dua tabel berikut: Tabel MK

Data

Tabel KHS

Data

Menggunakan SQL Explorer1. Dari aplikasi Delphi klik menu database >> explorer. 2. Setelah muncul window SQL explorer, klik menu Object >> New, muncul kotak dialog database alias pilih standart kemudian klik OK. 3. Ubah namanya dengan mengetikan mahasiswa, kemudian isikan pada path dengan direktori dimana anda menyimpan tabel anda.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

44

4. Klik kanan pada nama database nya kemudian pilih apply.

LatihanBuatlah aplikasi untuk menampilkan tabel mahasiswa, matakuliah, dan KHS.

Menghubungkan antar tabel1. Pada aplikasi Delphi, tambahkan 2 komponen table dari tab BDE. 2. Ubah property DatabaseName dari kedua komponen table tersebut menjadi Mahasiswa. 3. Ubah property TableName dari kedua komponen tabel tersebut menjadi mhs.db dan nilai.db. 4. Ubah property Name dari kedua komponen tabel tersebut menjadi tblmhs dan tblnilai. 5. Ubah property active dari kedua komponen tabel tersebut menadi true. 6. Tambahkan 2 komponen datasource dari tab DataAcces. Ubah property Dataset dari kedua datasource tersebut menjadi tblmhs dan tblnilai. 7. Tambahkan komponen DBGrid dari tab datacontrol dan ubah property datasorce-nya menjadi datasource1. 8. Tambahkan komponen dbnavigator dan ubah property datasourcenya menjadi datasource1. 9. Ubah property MasterSource dari komponen tblnilai menjadi datasource1. kemudian klik tanda disebelah kanan property masterfield sehingga muncul kotak dialog field link desaigner.

10. Klik field NPM pada Detail Field dan klik field NPM pada Master Field, kemudian klik add, kemudian lanjutkan dengan klik tombol OK. 11. Tambahkan komponen DBGrid kemudian ubah property datasource menjadi datasource1. 12. Klik kanan komponen DBGrid, kemudian pilih columns editor. Klik kanan pada kotak yang muncul, pilih add sampai 3 kali.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

45

13. 14. 15. 16.

Klik kolom pertama kemudian ubah property FieldName menjadi Kode_MK. Klik kolom kedua kemudian ubah property FieldName menjadi Nilai_uts. Klik kolom ketiga kemudian ubah property FieldName menjadi Nilai_uas. tutup kotak tersebut dan Jalankan program.

Membuat field hasil perhitungan1. ubah property active dari komponen tblnilai menjadi false. 2. Klik kanan komponen tblnilai, pilih field editor. Setelah muncul kotak editor klik kanan kotaktersebut kemudian pilih add all fields sehingga semua field masuk. 3. Klik kanan sekali lagi, pilih add new field, sehingga kotak dialog new field muncul. Isikan N_akhir pada kotak edit name dan pada tyoe diisi integer.pilih calculated pada field type kemudian klik OK.

4. Tutup kotak field editor. Double klik event OnCalcField dari komponen tblnilai kemudian masukan kode berikut: tblnilai['N_akhir']:=(tblnilai['nilai_uts']+tblnilai['nilai_uas'])/2; 5. Ubah property active dari tblnilai menjadi true. 6. Klik kanan pada DBGrid2 dan tambahkan satu field lagi untuk menampilkan N_akhir, kemudian jalankan program dan lihat hasilnya.

Membuat field lookup1. 2. 3. 4. 5. 6. 7.

Buat aplikasi baru, dan tambahkan3 komponen tabel dari tab BDE. Ubah property DatabaseName dari ketiga table tersebut menjadi mahasiswa. Ubah property TableName dari komponen table1 dan table2 menjadi mhs dan MK. Ubah property Name dari komponen table1 dan table2 menjadi tblmhs dan tblMK. Ubah property Active dari komponen table1 dan table2 menjadi true. Ubah property TableName dari komponen table3 menjadi nilai. Ubah property Name dari komponen table3 menjadi tblnilai.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

46

8. Klik kanan komponen tblnilai, setelah muncuk kotak editor, klik kanan kemudian pilih add all fields. Klik kanan sekali lagi kemudian pilih new field sehingga muncul kotak dialog New Field. 9. Isikan nama pada kotak edit name, type string, dan lookup pada field type, dan isikan kotak yang lain seperti pada gambar berikut dan dilanjutkan dengan klik OK.

10. Klik kanan sekali lagi untuk menambahkan satu field lagi, kemudian masukan daftar field seperti pada gambar berikut, kemudian klik OK.

11. Ubah posisi field pada editor field sehingga menjadi seperti berikut:

12. 13. 14. 15.

Ubah property active dari tblnilai menjadi true. Tambahkan datasource kemudian ubah property dataset menjadi tblnilai. Tambahkan komponen DBGrid dan ubah property datasource menjadi datasource1. Tambahkan komponen DBNavigator dan ubah property datasource menjadi datasource1. 16. Jalankan program dan lihat hasilnya.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

47

Menggunakan komponen query1. Buat aplikasi baru dan tambahkan komponen query dari tab BDE. 2. Ubah property DatabaseName dari komponen query1 menjadi mahasiswa. 3. Klik tanda pada property SQL dan dan masukan pernyataan SQL berikut pada string list editor: Select * from mhs 4. Klik OK kemudian ubah property active dari Query1 menjadi true. 5. Tambahkan komponen datasource dan ubah property Datasetnya menjadi Query1. 6. Tambahkan komponen DBGrid dan komponen DBNavigator kemudian ubah property datasource dari kedua komponen tersebut menjadi datasource1. 7. Jalankan dan lihat hasilnya.

Menampilkan data berdasar syarat tertentuMisalnya menampilkan data mahasiswa yang nim-nya 313001. 1. Dari aplikasi sebelumnya, ubah pernyataan SQL dari Query1 menjadi: select * from mhs where npm='313001' 2. activkan kembali komponen query1 kemudian jalankan program dan lihat hasilnya.

Mengambil data dari beberapa tabel1. Dari aplikasi sebelumnya, ubah pernyataan SQL dari query1 menjadi: select npm,nama,nilai_uts,nilai_uas,((nilai_uts+nilai_uas)/2) as N_akhir from mhs,nilai where mhs.npm=nilai.npm 2. Activekan komponen query kemudian jalankan program dan lihat hasilnya.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

48

Membuat Query dinamik1. Buat aplikasi baru dengan desain seperti berikut:

2. Kosong property text dari edit1, dan ubah property caption dari button1 menjadi &Cari. 3. Ubah property DatabaseName dari query1 menjadi mahasiswa. 4. Double klik komponen button1 dan masukan kode program berikut: query1.Close; query1.SQL.Clear; query1.SQL.Add('Select * from mhs where npm =:nm'); Query1.Prepare; query1.Params[0].AsString:=edit1.Text; query1.Open; 5. Jalankan program dan lihat hasilnya ketika pada kotak edit dimasukan data 313001.

Menggunakan ParamsByName

1. Dari aplikasi sebelumnya ubahlah kode program diatas menjadi seperti berikut: query1.Close; query1.SQL.Clear; query1.SQL.Add('Select * from mhs where nama =:nm'); Query1.Prepare; query1.ParamByName(nm).AsString:=edit1.Text; query1.Open; 2. Ubah property caption dari edit1 menjadi Masukkan nama mahasiswa. Latihan Buat aplikasi untuk mengakses data dari beberapa tabel dengan mengunakan SQL dinamik, dan hubungan komponen tersebut dengan komponen tabel untuk menambah keterangan dari data.

Membuat Laporan

1. Buat aplikasi baru, dan tambahkan komponen table menghubungkan ke tabel mhs. 2. Tambahkan komponen QuickRep pada tab Qreport dan ubah property dataset menjadi table1. Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 49

3. Tambahkan QrBand, kemudian tambahkan QRLabel pada komponen tersebut. Ubah property caption dari QRLabel menjadi LAPORAN MAHASISWA. 4. Ubah Property Align To band dari komponen QRLabel1 menjadi true. 5. Tambahkan komponen QRBand dan ubah property Bandtype menjadi rbColumnHeader. 6. Tambahkan QrLabel pada QrBand tersebut dan ubah captionnya menjadi NPM.

7. Tambahkan 3 komponen QRLabel lagi dan ubah property caption-nya menjadi nama, jenis kelamin, semester. 8. Dengan cara yang sama, tambahkan lagi komponen QRBand dan ubah property Bandtype menjadi rbDetil. 9. Tambahkan komponen QrDbText pada komponen QrBand terakhir dan ubah property dataset menjadi table1, dan property datafield menjadi NPM.

10. Dengan cara yang sama, tambahkan tiga komponen QrDbText lagi dan hubungkan kefield nama, jenis_kel, dan sem. 11. Klik QrBand pada ColumnHeader dan klik tanda plus (+) pada property frame, ubah property DrawBottom dan DrawTop menjadi True. 12. Tambahkan komponen button pada bagian atas Quickrep, kemudian ubah property caption menjadi preview. 13. double klik komponen button dan masukan kode program erikut: Quickrep1.Preview; 14. jalankan program dan lihat hasilnya.

Membuat laporan dengan sysdata

1. Dari aplikasi sebelumnya, tambahkan komponen QrBand dan ubah property bandtype menjadi rbPageFooter. 2. Tambahkan komponen QRSysData pada band pagefooter. Ubah property aligntoband menjadi true. 3. Ubah property text menjadi Dicetak tanggal, dan ubah property data menjadi qrsdate. 4. Tambahkan satu lagi komponen QrSysData, ubah property alignment menjadi tarightjustify, dan property aligntoband menjadi true. Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST 50

5. ubah property text menjadi Halaman, dan ubah property data menjadi qrsPageNumber. Tugas Pada dasarnya laporan juga dapat dibuat menggunakan query untuk mencetak data dari beberapa tabel atau untuk mencetak data sesuai dengan permintaan. Cobalah anda buat laporan dari komponen query untuk mencetak data dari beberapa tabel.

Modul Pemdograman Visual dengan Delphi Oleh: Bambang Robiin, ST

51