Modul - Pemrograman Lanjutan

61
PEMROGRAMAN LANJUTAN

description

modul delphi

Transcript of Modul - Pemrograman Lanjutan

  • PEMROGRAMAN LANJUTAN

  • H E K A Modul Pemrograman Lanjutan

    - 1 - Pengantar Borland Delphi

    PENGANTAR BORLAND DELPHI

    1.1. Mengenal Borland Delphi 7

    Borland Delphi 7 merupakan bahasa pemrograman berbasis Windows. Delphi 7 dapat

    membantu untuk membuat berbagai macam aplikasi yang berjalan di sistem operasi Windows,

    mulai dari sebuah program sederhana sampai dengan program yang berbasiskan client/server atau

    jaringan. Delphi, termasuk aplikasi yang dapat digunakan untuk mengolah teks, grafik, angka,

    database dan aplikasi web.

    Untuk mempermudah pemrogram dalam membuat program aplikasi, Delphi menyediakan

    fasilitas pemrograman yang sangat lengkap. Fasilitas pemrograman tersebut dibagi dalam dua

    kelompok, yaitu object dan bahasa pemrograman. Secara ringkas object adalah suatu komponen

    yang mempunyai bentuk fisik dan biasanya dapat dilihat (visual). Object biasanya dipakai untuk

    melakukan tugas tertentu dan mempunyai batasan-batasan tertentu. Sedangkan bahasa

    pemrograman secara singkat dapat disebut sebagai sekumpulan teks yang mempunyai arti tertentu

    dan disusun dengan aturan tertentu serta untuk menjalankan tugas tertentu. Gabungan dari object

    dan bahasa pemrograman ini sering disebut sebagai bahasa pemrograman berorientasi object atau

    Object Oriented Programming (OOP)

    Bahasa pemrograman Delphi merupakan pengembangan dari bahasa Pascal. Tetapi bukan

    berarti untuk mempelajari bahasa pemrograman Delphi harus mempelajari Pascal terlebih dahulu,

    karena Borland Delphi 7 sudah dirancang sedemikian rupa sehingga memudahkan bagi seorang

    pemula untuk merancang aplikasi berbasis Windows dengan Borland Delphi 7.

  • H E K A Modul Pemrograman Lanjutan

    - 2 - Pengantar Borland Delphi

    Khusus untuk pemrograman database, Delphi menyediakan object yang sangat kuat,

    canggih dan lengkap, sehingga memudahkan pemrogram dalam merancang, membuat dan

    menyelesaikan aplikasi database yang diinginkan. Selain itu Delphi juga dapat menangani data

    dalam berbagai format database, misalnya format Ms-Access, SyBase, Oracle, Interbase, FoxPro,

    Informix, DB2 dan lain-lain. Format database yang dianggap asli dari Delphi adalah Paradox dan

    dBase.

    Borland Delphi 7 merupakan pilihan bagi sebagian kalangan programmer untuk membuat

    aplikasi. Hal ini disebabkan kelebihan yang ada pada Borland Delphi 7. Berikut ini sebagian kecil

    dari banyak kelebihan Borland Delphi 7 :

    Berbasis Object Oriented Programming (OOP). Setiap bagian yang ada pada program dipandang sebagai suatu object yang mempunyai sifat-sifat yang dapat diubah dan diatur.

    Satu file .exe. Setelah program dirancang dalam IDE (Intergrated Development Environment) Delphi, Delphi akan mengkompilasinya menjadi sebuah file executable tunggal. Program yang

    dibuat dapat langsung didistribusikan dan dijalankan pada komputer lain tanpa perlu

    menyertakan file DLL dari luar. Ini merupakan sebuah kelebihan yang sangat berarti.

    Borland Delphi 7 hadir bersama Borland Kylix 3 yang berbasiskan Linux, sehingga memungkinkan programmer untuk membuat aplikasi multi-platform.

    Untuk dapat melakukan instalasi dan menggunakan Borland Delphi 7 dengan normal, ada

    beberapa persyaratan yang harus dipenuhi, yaitu sebagai berikut :

    Prosesor Prosessor Pentium 233 MHZ atau yang lebih tinggi.

    Sistem Operasi Microsoft Windows XP, Windows 2000, atau Windows 98.

    Memory Membutuhkan RAM 64 MB untuk edisi Architect, Enterprise dan Professional, kecuali untuk edisi

    Personal 32 MB. Disarankan 128 MB.

  • H E K A Modul Pemrograman Lanjutan

    - 3 - Pengantar Borland Delphi

    Ruang Hard Disk Untuk edisi Architect membutuhkan 124 MB, untuk instalasi compact dan 520 MB untuk

    instalasi penuh. Untuk edisi Enterprise membutuhkan 124 MB, untuk instalasi compact dan

    450 MB untuk instalasi penuh. Untuk edisi Professional membutuhkan 110 MB, untuk instalasi

    compact dan 400 MB untuk instalasi penuh. Untuk edisi Personal membutuhkan 175 MB, untuk

    instalasi compact dan 160 MB untuk instalasi penuh.

    CD-ROM drive Monitor SVGA Mouse 1.2. Memulai Delphi 7

    Langkah awal untuk menjalankan program Borland Delphi 7, adalah sebagai berikut :

    1. Klik tombol Start yang terletak pada bagian Taskbar.

    2. Pilih menu Programs J Borland Delphi 7, kemudian klik Delphi 7.

    3. Akan tampil sebuah splash screen Borland Delphi 7. Tunggulah beberapa saat sampai program

    Borland Delphi 7 tampil memenuhi layar monitor.

    4. Bidang kerja Intergrated Development Environment (IDE) Delphi 7 akan tampil memenuhi layar

    monitor seperti diperlihatkan pada gambar 1.1 berikut ini. Pada bidang inilah programmer

    dapat menumpahkan kreativitasnya dalam membuat program.

  • H E K A Modul Pemrograman Lanjutan

    - 4 - Pengantar Borland Delphi

    Object TreeView

    Speed Bar

    Menu

    Component Pallete

    Form Designer

    Code Editor

    Object Inspector

    Gambar 1.1

    Interface Borland Delphi

    Jendela IDE Delphi 7 mempunyai perangkat-perangkat yang dapat dipergunakan untuk

    memudahkan seorang programmer dalam membuat program. Secara default, Borland telah

    mengatur letak perangkat-perangkat sedemikian rupa, perangkat-perangkat tersebut diantaranya :

    Menu Menu pada Delphi memiliki kegunaan seperti menu pada aplikasi Windows lainnya. Dari menu

    ini programmer dapat memanggil, menyimpan program, menjalankan program, meremove

    komponen atau menambahkan komponen baru dan lain sebagainya. Singkatnya segala sesuatu

    yang berhubungan dengan IDE Delphi dapat Anda lakukan dari menu.

  • H E K A Modul Pemrograman Lanjutan

    - 5 - Pengantar Borland Delphi

    Speed Bar Speed Bar atau yang sering juga disebut toolbar berisi kumpulan tombol yang tidak lain adalah

    pengganti beberapa item menu yang sering digunakan. Dengan kata lain, setiap tombol pada

    Speed Bar menggantikan salah satu item menu. Sebagai contoh, tombol kiri atas adalah

    pengganti File New, tombol disebelah kanannya adalah pengganti menu

    File Open, dan seterusnya.

    Component Palette Component Palette berisi kumpulan icon yang melambangkan komponen-komponen pada VCL

    (Visual Component Library). VCL adalah merupakan pustaka komponen yang dengannya Anda

    dapat membangun sebuah aplikasi. Pada Component Palette, terdapat beberapa tab, yaitu

    Standard, Additionals, Data Access, Data Controls dan lain sebagainya.

    Object TreeView Object TreeView berisi struktur pohon yang menampilkan semua nama komponen yang telah

    Anda letakkan pada form designer atau biasa juga disebut dengan hirarki seperti pada

    Windows Explorer.

    Object Inspector Object Inspector digunakan untuk mengubah karakteristik dari sebuah komponen. Ada dua tab

    pada Object Inspector, yaitu Properties dan Events. Pada tab Properties Anda dapat mengubah

    nilai dari beberapa komponen yang telah diletakkan pada form, sedangkan tab Events

    digunakan untuk menyisipkan kode untuk menangani kejadian tertentu. Kejadian dapat

    dibangkitkan karena bebarapa hal, seperti pengklikan mouse, penekanan tombol keyboard,

    penutupan jendela dan lain sebagainya.

    Form Designer Form Designer merupakan tempat dimana programmer dapat merancang jendela aplikasi atau

    tempat untuk desain interface dari aplikasi Windows. Desain form dilakukan dengan cara

    meletakkan komponen-komponen yang diambil dari Component Palette.

  • H E K A Modul Pemrograman Lanjutan

    - 6 - Pengantar Borland Delphi

    Code Editor Code Editor adalah tempat dimana programmer menuliskan kode program yang pernyataan-

    pernyataannya dalam bahasa Object Pascal. Hal utama yang perlu diperhatikan dalam Code

    Editor adalah Anda tidak perlu menuliskan seluruh kode sumber karena Delphi telah menuliskan

    semacam kerangka sumber.

    1.3. Langkah Awal Pembuatan Project

    Untuk membuat sebuah aplikasi, pertama-tama programmer harus menciptakan sebuah

    project, berikut ini akan disajikan contoh pembuatan sebuah project. Prosedur awal yang dapat

    dilakukan untuk membuat sebuah project adalah :

    1. Pilih menu File New Application sehingga pada lembar kerja Delphi akan tampak

    sebuah form kosong.

    2. Simpan rancangan project aplikasi yang masih kosong tersebut dengan perintah

    File Save All sehingga tampil kotak dialog Save Unit1 As. Pada bagian ini yang

    perlu diperhatikan bahwa direktori penyimpanan file harus diubah pada bagian Save in.

    Selanjutnya masukkan nama unit pada bagian File Name dengan catatan nama unit tidak

    boleh sama dengan nama Form Designer, kemudian klik Save.

    Kotak dialog berikutnya yang akan muncul adalah kotak dialog Save Project1 As. Kotak

    dialog ini digunakan untuk menentukan nama file Project yang diinginkan.

    Setelah file Unit dan Project disimpan, maka delphi akan membentuk file-file dengan ekstensi

    berikut ini :

    .dpr file Project yang berisi program utama dari aplikasi. .pas file Unit yang digunakan untuk menangani kejadian (event) pada form. .dfm file Form yang berisi daftar komponen berikut properti-propertinya. .res file Resources yang berisi sebuh icon yang digunakan oleh project.

  • H E K A Modul Pemrograman Lanjutan

    - 7 - Pengantar Borland Delphi

    .dof file Options merupakan file yang berisi option-option dari suatu project yang dinyatakan melalui perintah Options dari menu Project.

    .dcu file Unit Object merupakan file unit (.pas) yang telah dikompilasi oleh compiler yang akan dihubungkan dengan file eksekusi.

    .exe file Executable yang dibentuk oleh kompiler dan merupakan file eksekusi (executable) dari program aplikasi.

    3. Setelah project dan unit disimpan, jalankan program dengan cara memilih menu Run Run,

    atau klik tombol run , atau tekan tombol F9. Untuk menghentikan project klik tanda silang

    yang terdapat pada pojok kanan atas atau menggunakan perintah Application.Terminate

    pada Program.

    1.4. Komponen Borland Delphi

    Untuk dapat membuat program aplikasi, programmer harus meletakkan komponen-

    komponen yang diambil dari component palatte serta mengatur tata letak komponen-komponen

    tersebut pada bagian form designer.

    1. Meletakkan komponen pada form designer.

    Untuk meletakkan komponen pada form designer, klik sebuah komponen pada component

    palette, sebagai contoh pilih komponen Edit.

    Komponen Edit

    Kemudian klik pada bagian form designer, yaitu pada posisi dimana komponen tersebut akan

    diletakkan.

  • H E K A Modul Pemrograman Lanjutan

    - 8 - Pengantar Borland Delphi

    Bagian lembar kerja form

    Komponen Edit

    Setelah semua komponen diletakkan pada form, langkah berikutnya yang harus dilakukan

    adalah mengganti properties dan events dari komponen-komponen yang telah diletakkan pada

    form designer.

    2. Mengubah Properties komponen.

    Properti komponen yang telah diletakkan pada bagian form designer dapat diubah dengan

    menggunakan tab Properties pada jendela object inspector.

    Bagian yang berfungsi untuk menampilkan nama object/komponen

    Klik tombol Builder [] untuk membuka suatu kotak dialog

    Klik tombol drop down untuk mengubah nilai logika True / False

    Klik baris properti dan ubah nilainya

    Klik tombol plus untuk membuka sub-properti

    3. Mengubah komponen Event.

    Event dari komponen pada form designer dapat diubah dengan menggunakan tab events pada

    jendela object inspector guna menangani kejadian-kejadian dari suatu komponen.

  • H E K A Modul Pemrograman Lanjutan

    - 9 - Pengantar Borland Delphi

    4. Jenis-jenis komponen standar Delphi 7.

    Komponen Fungsi

    Pointer

    Pointer adalah komponen khusus dan terdapat disetiap tab dalam component palatte. Komponen pointer adalah komponen select yang digunakan untuk memilih komponen dalam form designer.

    Frames

    Sebuah kontainer yang digunakan untuk menampung komponen frame dapat diletakkan dalam form atau frame-frame yang lain.

    MainMenu

    Komponen yang digunakan untuk membuat menu bar dan menu drop down. Komponen ini bersifat invisible.

    PopUpMenu

    Komponen yang digunakan untuk membuat menu popup yang akan muncul jika pemakai melakukan proses klik kanan. Komponen ini bersifat invisible.

    Label

    Komponen ini hanya digunakan untuk menambahkan teks di dalam form

    Edit

    Komponen yang digunakan untuk menerima satu baris teks yang merupakan data input pemakai. Komponen ini juga dapat digunakan untuk menampilkan teks.

    Memo

    Komponen Memo dipakai untuk memasukkan atau menapilkan beberapa baris teks di dalam form.

    Button

    Komponen yang dipakai untuk membuat button yang akan dipakai untuk memilih pilihan di dalam aplikasi. Jika mengklik komponen button tersebut maka suatu perintah atau kejadian akan dijalankan.

    CheckBox

    Komponen yang digunakan untuk memilih atau membatalkan suatu pilihan, yaitu dengan cara mengklik komponen.

    RadioButton

    Komponen yang digunakan untuk memberikan sekelompok pilihan dan hanya ada satu pilihan yang dapat dipilih. Untuk memilih salah satu pilihan adalah dengan mengklik tombol pilihan yang diinginkan.

  • H E K A Modul Pemrograman Lanjutan

    - 10 - Pengantar Borland Delphi

    ListBox

    Komponen yang digunakan untuk membuat sebuah daftar pilihan, dimana hanya ada satu pilihan yang dapat dipilih. Untuk mencari dan kemudian memilih salah satu pilihan yang terdapat di dalam daftar dapat menggunakan batang penggulung.

    ComboBox

    Komponen yang digunakan untuk membuat sebuah daftar pilihan, dimana hanya ada satu pilihan yang dapat dipilih. Untuk mencari dan kemudian memilih salah satu pilihan yang terdapat di dalam daftar dapat menggunakan mengklik tombol drop down.

    ScrollBar

    Komponen ini mempunyai fungsi yang sama seperti batang penggulung yang terdapat dalam program-program berbasis Windows pada umumnya.

    GroupBox

    Sebuah kontainer yang dapat digunakan untuk mengelompokkan komponen-komponen lain seperti Radio Button, CheckBox dan komponen kontainer yang lain.

    RadioGroup

    Komponen ini merupakan komponen kombinasi dari GroupBox dan didesain untuk membuat sekelompok RadioButton,

    Panel

    Sebuah kontainer yang dapat digunakan untuk membuat StatusBar, ToolBar dan ToolPalette.

    ActionList

    Komponen yang berisi daftar action yang digunakan bersama-sama dengan komponen dan kontrol seperti item menu dan button.

    1.5. Latihan

    Desainlah sebuah form berikut pada Form Designer. Kemudian simpan dengan dengan nama :

    Unit : UHello.pas Project : HelloWord.dpr

    edtKata

    lblKata

    btnNavybtnMaroon

    btnHapusbtnTampil

    FHello

    btnTeal

    btnKeluar

  • H E K A Modul Pemrograman Lanjutan

    - 11 - Pengantar Borland Delphi

    Kemudian ketiklah kode program berikut ini pada Code Editor : procedure TFHello.FormActivate(Sender: TObject); begin edtKata.Clear; lblKata.Caption := ''; edtKata.SetFocus; end; procedure TFHello.btnTampilClick(Sender: TObject); begin lblKata.Caption := edtKata.Text; end; procedure TFHello.btnHapusClick(Sender: TObject); begin edtKata.Clear; lblKata.Caption := ''; edtKata.SetFocus; end; procedure TFHello.btnMaroonClick(Sender: TObject); begin lblKata.Font.Color := clMaroon; end; procedure TFHello.btnNavyClick(Sender: TObject); begin lblKata.Font.Color := clNavy; end; procedure TFHello.btnTealClick(Sender: TObject); begin lblKata.Font.Color := clTeal; end; procedure TFHello.btnKeluarClick(Sender: TObject); begin Application.MessageBox('Terima Kasih Telah Menggunakan Program Ini', 'Byee.. Byee..', MB_OK + MB_ICONINFORMATION); Application.Terminate; end;

  • H E K A Modul Pemrograman Lanjutan

    - 12 - Mengenal Pemrograman Delphi

    MENGENAL PEMROGRAMAN DELPHI

    2.1. Memulai Program Borland Delphi 7

    1. Komentar

    Komentar Dipakai untuk memberikan penjelasan atau keterangan di dalam baris program. Teks

    yang ditulis sebagai komentar tidak akan dikompilasi oleh kompiler pada saat program aplikasi

    di jalankan.

    Untuk menuliskan sebuah komentar, programmer dapat menggunakan salah satu tanda dari

    tiga bentuk tanda yang disediakan, yaitu :

    Kurung Kurawal D { Komentar Program } Kurung Bintang D (* Komentar Program *) Slash Ganda D // Komentar Program Komentar dengan tanda kurung kurawal dan kurung bintang menggunakan tanda pembuka

    dan tanda penutup, sehingga teks yang dianggap sebagai komentar adalah teks yang terletak

    di antara tanda pembuka dan tanda penutup. Sedangkan tanda komentar slash ganda tidak

    menggunakan tanda penutup, sehingga semua teks yang terletak di belakan tanda slash ganda

    dianggap sebagai komentar.

    2. Tipe Data

    Pemilihan tipe data yang tepat akan sangat berguna dalam penghematan memori, kecepatan

    proses, ketelitian penghitungan dan lain-lain. Ada beberapa hal yang perlu diperhatikan dalam

    menentukan tipe data :

  • H E K A Modul Pemrograman Lanjutan

    - 13 - Mengenal Pemrograman Delphi

    a. Penggunaan Memori

    Masing-masing tipe data memiliki perbedaan dalam hal penggunaan memori. Dalam hal ini

    usahakan untuk menggunakan tipe data yang memiliki memori yang kecil.

    b. Ketelitian Penghitungan

    Walaupun unsur penghematan memori sangat penting untuk diperhatikan namun

    kebenaran dalam hal ketelitian penghitungan jauh lebih penting. Oleh sebab itu gunakan

    tipe data yang mempunyai tingkat ketelitian (presisi) paling tinggi.

    Borland Delphi menyediakan banyak tipe data. Jenis maupun tipe data yang dapat digunakan

    antara lain adalah :

    Tipe Integer

    Tipe data Integer digunakan untuk bilangan bulat atau bilangan yang tidak memiliki angka

    desimal. Tipe data Integer memiliki beberapa tipe yang tergantung pada rentang nilai dan

    ukuran penggunaan memori.

    Tipe Rentang Nilai Byte

    Byte 0 .. 255 1 Word 0 .. 65535 2 ShortInt -128 .. 127 1 SmallInt -32768 .. 32767 2 Integer -2147483648 .. 2147483648 4 Cardinal 0 .. 2147483647 4 LongInt -2147483648 .. 2147483648 4

    Semakin besar rentang nilai bilangan, semakin besar pula memori yang diperlukan.

    Tipe Real

    Tipe data Real digunakan untuk bilangan yang memiliki desimal (ditulis dalam a x 10b).

    Tipe data Real memiliki beberapa tipe yang tergantung pada rentang nilai dan ukuran

    penggunaan memori.

  • H E K A Modul Pemrograman Lanjutan

    - 14 - Mengenal Pemrograman Delphi

    Tipe Rentang Nilai Byte

    Real48 2.9 x 10-39 .. 1.7 x 1038 1 Single 1.5 x 10-45 .. 3.4 x 1038 2 Double 5.0 x 10-324 .. 1.7 x 10308 1 Real 5.0 x 10-324 .. 1.7 x 10308 2 Extended 3.6 x 10-4951 .. 1.1 x 104932 4 Comp -263+1 .. 263-1 4 Currency -922337203685477.5808 .. 922337203685477.5807 4

    Tipe Double ekuivalen dengan tipe Real yang umum dipakai. Tipe Real48 digunakan untuk

    menjaga kompabilitas dengan versi sebelumnya. Tipe Real48 menghasilkan proses yang

    lebih lambat. Tipe Extended menghasilkan ketelitian yang lebih baik tetapi kurang

    kompabilitas jika program nantinya didesain untuk sharing dengan platform lain. Tipe Comp

    adalah tipe asli yang digunakan CPU Intel yang sebetulnya mewakili tipe Integer 64 bit,

    tetapi dikelompokkan dalam tipe Real karena tidak mempunyai sifat ordinal. Comp dipakai

    untuk mempunyai kompabilitas dengan versi sebelumnya. Sebaiknya gunakan Int64 untuk

    kerja yang lebih baik

    Keuntungan dari penggunaan tipe data Currency adalah :

    Tipe data Currency mempunyai ketelitian yang lebih tinggi dalam menangani bilangan yang

    cukup besar.

    Tipe data Currency dipakai dalam CurrencyField dan komponen lain dan kompatibel dengan

    tipe database yang menyatakan uang.

    Tipe Boolean

    Tipe data Boolean digunakan untuk data logika yang hanya berisi True (Benar) dan False

    (Salah). Tipe data Boolean yang dapat digunakan antara lain :

    Tipe Byte

    Boolean 1 ByteBool 1 WordBool 2 LongBool 4

  • H E K A Modul Pemrograman Lanjutan

    - 15 - Mengenal Pemrograman Delphi

    Dari beberapa tipe yang ada disarankan untuk menggunakan tipe Boolean, sedangkan

    untuk tipe lain hanya untuk menjaga kompabilitas dengan program lain yang menggunakan

    tipe yang sama. Variabel tipe data Boolean dapat menerima penggunaan operator logika

    AND, OR, dan NOT.

    Tipe Character

    Tipe data Character digunakan untuk menyatakan sederetan karakter satu huruf dalam

    bentuk tiga tipe, yaitu :

    Tipe Rentang Nilai Byte

    Char 1 Karakter ANSI 1 AnsiChar 1 Karakter ANSI 1 WideChar 1 Karakter Unicode 2

    Tipe String

    Tipe data string digunakan untuk menyatakan sederetan karakter, misalnya nama, alamat,

    kota, dan lain-lain. Adapun tipe-tipe dari data string, yaitu :

    Tipe Rentang Nilai Byte

    ShortString 2 256 256 Karakter AnsiString 4 2 GB 231 Karakter String 255 3 GB 231 Karakter WideString 4 2 GB 230 Karakter

    Tipe ShortString berfungsi untuk menyesuaikan kompabilitas dengan versi sebelumnya,

    sedangkan AnsiString dan WideString dapat digunakan untuk menyimpan karakter Unicode.

    Variabel dengan tipe data string mampu menangani data String yang hampir tidak terbatas

    (3 GB)

    3. Variabel

    Variabel adalah suatu tempat yang dialikasikan dalam memori yang diberi nama (sebagai

    pengenal) untuk menampung suatu data. Pendeklarasian variabel mempunyai susunan sebagai

    berikut :

  • H E K A Modul Pemrograman Lanjutan

    - 16 - Mengenal Pemrograman Delphi

    var nama_variabel : tipe_variabel;

    Contoh :

    var a : Integer;

    Contoh diatas mendeklarasikan variabel a dengan tipe Integer. Untuk mendeklarasikan

    beberapa variabel, perintah var cukup dituliskan hanya satu kali.

    Contoh :

    var a : Integer; b : String; c : Real;

    Contoh diatas mendeklarasikan variabel a, b dan c yang masing-masing bertipe Integer, String

    dan Real. Untuk mendeklarasikan beberapa variabel dengan tipe yang sama, tipe datanya

    cukup dituliskan hanya satu kali.

    Contoh :

    var a, b, c : Integer; x, y, z : String;

    Contoh diatas mendeklarasikan variabel a, b dan c dengan tipe Integer, dan variabel x, y dan z

    dengan tipe String.

    Aturan yang harus diikuti dalam menuliskan nama variabel :

    Panjang penulisan nama variabel maksimum terdiri dari 63 karakter. Jika lebih dari 63

    karakter maka kompiler akan mengabaikan penulisan karakter berikutnya.

    Penulisan nama variabel hanya terdiri dari huruf, angka, garis bawah.

    Penulisan nama variabel tidak boleh diawali dengan angka. Jadi harus diawali dengan huruf

    atau garis bawah.

    Nama variabel tidak boleh merupakan kata kunci milik Delphi, seperti case, if, while,

    end, dan lain-lain.

  • H E K A Modul Pemrograman Lanjutan

    - 17 - Mengenal Pemrograman Delphi

    Nama variabel tidak boleh mengandung karakter yang dipakai untuk operator, seperti (,

    ), +, -, *, /, , :, ;, dan lain-lain.

    Berikut ini beberapa contoh penulisan nama variabel :

    Nama variabel yang sah

    Nama variabel yang tidak sah

    Kode_1 1_Kode diawali dengan angka _Angka #Nilai diawali dengan karakter lain Nil_Umum Else kata kunci Delphi

    Selain ketentuan diatas, nama variabel harus bersifat unik atau tidak boleh ada yang sama

    pada satu ruang lingkup yang berbeda.

    Secara umum suatu variabel dapat dikenali pada bagian variabel tersebut dideklarasikan, jadi

    ruang lingkup variabel adalah pada lingkup variabel tersebut dideklarasikan seperti pada tabel

    berikut ini :

    Tempat Deklarasi Ruang Lingkup

    Tempat deklarasi program, function atau procedure

    Mulai dari posisi deklarasi sampai akhir blok (program, function atau procedure), termasuk semua blok yang berada dalam blok (sub blok).

    Bagian interface sebuah unit Mulai dari posisi dideklarasikan sampai akhir unit. Juga termasik program lain atau unit lain yang menggunakan unit tersebut.

    Bagian implementation sebuah unit, tetapi bukan di dalam blok function atau procedure

    Mulai dari posisi dideklarasikan sampai akhir unit. Juga termasikdalam function atau prosedur dalam unit tersebut.

    Contoh :

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject);

  • H E K A Modul Pemrograman Lanjutan

    - 18 - Mengenal Pemrograman Delphi

    private { Private declarations } public { Public declarations } end; var Form1: TForm1; x : Integer; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin x := 12; //variabel ini bersifat global end; procedure TForm1.Button2Click(Sender: TObject); var y : Integer; begin y := 60; //variabel ini bersifat lokal end; end.

    4. Operator

    Dalam melaksanakan proses pengolahan data, Delphi menyediakan berbagai operator dengan

    urutan atau derajat proses pelaksanaan yang berbeda untuk beberapa operator yang dilibatkan

    pada suatau proses. Berikut ini adalah derajat proses pengolahan data yang dimiliki delphi :

    Apabila terdapat ekspresi A + B * C, maka operasi yang akan dikerjakan terlebih dahulu

    B * C, baru setelah itu hasilnya ditambahkan dengan A. Urutan proses tersebut terjadi karena

    proses perkalian mempunyai urutan derajat pengoperasian yang lebih tinggi dari penjumlahan.

    Namun jika bentuk ekspresi diubah menjadi (A + B) * C, maka operasi yang didahulukan

    (A + B), kemudian hasilnya dikalikan dengan C. Hal ini menunjukkan bahwa tanda kurung

    digunakan untuk mendahulukan proses.

  • H E K A Modul Pemrograman Lanjutan

    - 19 - Mengenal Pemrograman Delphi

    Apabila ada proses yang terdiri dari beberapa operator yang mempunyai urutan derajat yang

    sama, maka proses pengoperasian akan mendahulukan proses yang ditulis paling kiri.

    Operator Assignment (Penugasan)

    Assignment atau operator penugasan dituliskan dengan bentuk := (titik dua sama

    dengan) dan berfungsi untuk memasukkan suatu nilai data ke dalam sebuah variabel,

    dengan bentuk penulisan :

    Nama_Variabel := Ekspresi;

    Contoh :

    Harga := 500; Jumlah := 20; Total := Harga * Jumlah;

    Operator Aritmatika

    Operator aritmatika digunakan untuk melakukan operasi aritmatika. Delphi mempunyai

    beberapa operator aritmatika, yaitu seperti tabel dibawah ini.

    Operator Fungsi Tipe yang Diproses Tipe Hasil Proses

    * Perkalian Integer, Real Integer, Real / Pembagian Real Integer, Real Integer, Real + Penjumlahan Integer, Real Integer, Real - Pengurangan Integer, Real Integer, Real div Pembagian Integer Integer Integer mod Sisa Hasil Bagi Integer Integer

    Contoh :

    Angka := 15 * 2; //Hasil 30 Angka := 15 / 2; //Hasil 7.5 Angka := 15 + 2; //Hasil 17 Angka := 15 - 2; //Hasil 13 Angka := 15 div 2; //Hasil 7 Angka := 15 mod 2; //Hasil 1 Untuk operasi perpangkatan, Delphi tidak menyediakan operator untuk pemangkatan.

    Sebagai gantinya, dapat digunakan rumus :

    ax = exp(b * ln(a))

  • H E K A Modul Pemrograman Lanjutan

    - 20 - Mengenal Pemrograman Delphi

    Contoh :

    Angka1 := 5; Angka2 := 2; Hasil1 := exp(Angka1 * ln(Angka2)); //Hasil 32 Hasil2 := exp(Angka2 * ln(Angka1)); //Hasil 25 Operator Relasi (Pembandingan)

    Operotor relasi berfungsi untuk membandingkan suatu nilai (ekspresi) dengan nilai

    (ekspresi) lain yang akan menghasilkan suatu nilai logika (Boolean) yaitu True atau False.

    Kedua data yang dibandingkan tersebut harus memiliki tipe data yang sama. Berikut ini

    adalah tabel operator relasi yang disediakan Delphi :

    Operator Keterangan

    = Sama Dengan > Lebih Besar < Lebih Kecil >= Lebih Besar atau Sama Dengan 20; //menghasilkan True x := 21 - 9 > 20; //menghasilkan False

    Operator Logika

    Operator logika digunakan untuk mengekspresikan suatu satu atau lebih data atau ekspresi

    logika (Boolean), menghasilkan data logika (boolean) baru. Tabel operator logika dengan

    hierarki dari atas ke bawah adalah sebagai berikut :

    Operator Keterangan

    not Tidak and Dan or Atau xor Exclusive Or

    Operator Logika Not

  • H E K A Modul Pemrograman Lanjutan

    - 21 - Mengenal Pemrograman Delphi

    Operator logika Not merupakan operator yang menyatakan kondisi kebalikan dari suatu

    ekspresi.

    Contoh :

    x := not(21 > 9); //Hasil False x := not(21 < 9); //Hasil True x := not(21 = 9); //Hasil True

    Operator Logika And

    Operator logika And hanya akan menghasilkan nilai True jika lebih dari satu ekspresi

    yang menggunakan operator And bernilai True. Apabila ada satu ekspresi atau lebih

    bernilai False maka operator logika And akan menghasilkan nilai False.

    Contoh :

    x := (21 > 9) and (19 < 71); //Hasil True x := (21 < 9) and (19 < 71); //Hasil False x := (21 < 9) and (19 > 71); //Hasil False

    Operator Logika Or

    Operator logika Or akan menghasilkan nilai True jika salah satu atau seluruh ekspresi

    yang menggunakan operator Or bernilai True. Operator Or hanya akan bernilai False

    jika semua ekspresi yang menggunakan operator Or bernilai False.

    Contoh :

    x := (21 > 9) or (19 < 71); //Hasil True x := (21 < 9) or (19 < 71); //Hasil True x := (21 < 9) or (19 > 71); //Hasil False

    Operator Logika Xor

    Operator logika Xor akan menghasilkan nilai True jika ekspresi yang terletak di kiri

    operator Xor berbeda dengan ekspresi disebelah kanannya. Operator Xor hampir

    memiliki fungsi yang sama dengan operator tidak sama dengan.

    Contoh :

    x := (9 < 21) xor (19 < 71); //Hasil False x := (9 > 21) xor (19 > 71); //Hasil False x := (9 < 21) xor (19 > 71); //Hasil True x := (9 > 21) xor (19 < 71); //Hasil True

  • H E K A Modul Pemrograman Lanjutan

    - 22 - Mengenal Pemrograman Delphi

    Operator String

    Operator String fungsinya untuk menggabungkan dua data string. Operator setring

    dilambangkan dengan bentuk + .

    Penggabungan dua buah string tersebut menghasilkan data yang berjenis string juga.

    Contoh :

    x := Mata Kuliah ; y := Pemrograman Lanjutan; z := x + y;

    Maka z akan berisi Mata Kuliah Pemrograman Lanjutan

    2.2. Alur Program

    1. Pernyataan Percabangan

    Dengan menggunakan suatu pernyataan percabangan, alur program tidak harus dari atas ke

    bawah tetapi dapat melompat menuju baris program yang lain. Terdapat dua macam

    pernyataan percabangan bersyarat yang dapat digunakan yaitu if dan case.

    Percabangan If - Then - Else

    Pernyataan percabangan If - Then - Else digunakan untuk menjalankan suatu pernyataan

    atau satu blok pernyataan, tergantung pada nilai yang diuji.

    Syntax If - Then :

    if then atau if then ; begin ; ; . . ; end;

  • H E K A Modul Pemrograman Lanjutan

    - 23 - Mengenal Pemrograman Delphi

    Syntax If Then - Else :

    if then atau if then begin else ; ; ; . . ; end else begin ; ; . . ; end; adalah suatu ekspresi logika atau berupa syarat percabangan. Perintah if akan

    menguji ekspresi logika yang ada disebelah kanannya. Jika kondisi bernilai True maka akan

    dikerjakan . Sebaliknya jika kondisi bernilai False maka akan dikerjakan

    .

    Contoh :

    if Nilai >= 60 then Keterangan := Lulus else Keterangan := Tidak Lulus;

    Pada contoh diatas , pernyataan sebelum else tidak perlu diakhiri dengan tanda titik koma.

    Jika titik koma tersebut tetap ditambahkan maka Delphi akan menampilkan pesan

    kesalahan. Bila pernyataan yang dituliskan berupa blok pernyataan atau lebih dari satu

    baris pernyataan maka kata kunci begin dan end harus digunakan.

    Contoh :

    if Nilai >= 60 then begin Keterangan := Lulus; Grade := A; end else begin Keterangan := Tidak Lulus;

  • H E K A Modul Pemrograman Lanjutan

    - 24 - Mengenal Pemrograman Delphi

    Grade := D; end;

    Percabangan Case - Of

    Percabangan Case - Of digunakan untuk mencabangan ke pilihan tertentu berdasarkan

    pengujian suatu nilai. Struktur pencabangan ini biasa dipakai jika alternatif

    pencabangannya cukup banyak.

    Syntax :

    case of : ; : ; . . : ; end;

    atau

    case of : ; : ; . . : ; else ; end;

    adalah suatu ekspresi bertipe ordinal. Program akan menguji satu per sata

    sama atau data adalah anggota dari , pernyataan atau blok

    pernyataan yang ada disebelah kanannya akan dilaksanakan, untuk kemudian program

    melompat ke akhir dari struktur Case, tanpa melanjutkan pengujian

    selanjutnya. Jika tidak ada yang memenuhi syarat, maka tidak ada satu pun

    pernyataan yang akan dilaksanakan, kecuali menggunakan bentuk Else, yang

    mengakibatkan yang berada setelah pernyataan Else akan

    dilaksanakan jika tidak ada yang memenuhi syarat.

  • H E K A Modul Pemrograman Lanjutan

    - 25 - Mengenal Pemrograman Delphi

    Percabangan Case - Of digunakan untuk menyederhanakan penggunaan If - Then - Else

    yang terlalu panjang. Hanya saya percabangan Case - Of ini biasanya dipakai untuk

    percabangan dengan lebih dari dua pilihan.

    Contoh :

    if Nilai = 0 then Hasil := Nol else if Nilai = 1 then Hasil := Satu else if Nilai = 2 then Hasil := Dua else if Nilai = 3 then Hasil := Tiga else Hasil := Empat;

    dapat dirubah menjadi :

    case Nilai of 0 : Hasil := Nol; 1 : Hasil := Satu; 2 : Hasil := Dua; 3 : Hasil := Tiga; else Hasil := Empat; end;

    2. Pernyataan Pengulangan

    Pengulangan While .. Do

    Pernyataan pengulangan While .. Do bertugas mengulang satu pernyataan atau suatu blok

    pernyataan atau selama (while) suatu kondisi (syarat) bernilai True.

    Syntax :

    while do atau while do ; begin ; ; . . ; end;

    Prosedur alur pengulangan diatas diatas adalah sebagai berikut :

    1. Program akan menguji nilai .

  • H E K A Modul Pemrograman Lanjutan

    - 26 - Mengenal Pemrograman Delphi

    2. Jika bernilai False maka tidak dilaksanakan dan

    program akan menghentikan pengulangan, kemudian menjalankan baris berikutnya.

    3. Jika bernilai True, maka pernyataan akan dilaksanakan satu kali.

    4. Kembali ke prosedur no. 1.

    5. Program menghentikan pengulangan dan menjalankan baris berikutnya.

    Pada dasarnya pengulangan akan berhenti kalau bernilai False.

    bisa berupa satu pernyataan atau blok pernyataan yang diawali dengan

    begin dan diakhiri dengan end. Penulisan pernyataan harus diakhiri dengan titik koma

    sebagai tanda akhir dari pernyataan While.

    Contoh :

    while Jumlah >= 20 do Jumlah := Jumlah + 1; while a >= b do begin a := a + 1; b := b * a; end;

    Pengulangan Repeat .. Until

    Pengulangan ini hampir sama dengan pengulangan While .. Do dan biasanya digunakan

    jika jumlah pengulangan belum dapat ditentukan pada saat program ditulis.

    Perbendaannya, pernyataan Repeat .. Until dan While .. Do terletak pada letak pengecekan

    kondisi. Jika pada pernyataan While .. Do kondisi dicek pada awal blok pernyataan yang

    harus diulang, sedangkan pada pernyataan Repeat .. Until, kondisi dicek pada akhir blok

    pernyataan yang harus diulang.

    Syntax :

    repeat ; ; ... ; until

  • H E K A Modul Pemrograman Lanjutan

    - 27 - Mengenal Pemrograman Delphi

    Perbedaan lainnya adalah pernyataan While .. Do mengulang pernyataan selama kondisi

    masih terpenuhi, tetapi pernyataan Repeat .. Until hanya akan mengulang pernyataan

    selama kondisi belum terpenuhi. Perbedaan lain yang dapat ditemukan untuk pernyataan

    Repeat .. Until adalah :

    1. Dapat melaksanakan pengulangan lebih dari satu pernyatan baik berupa kumpulan

    pernyataan tunggal atau kumpulan blok pernyataan. Jadi bagian yang diulang adalah

    segala sesuatu yang berda di antara pernyataan Repeat .. Until

    2. Menjalankan perintah yang berada diantara pernyataan Repeat .. Until karena

    pengujian terletak di bagian bawah pernyataan, minimal satu kali.

    Contoh :

    repeat k := i mod j; i := j; j := k; until j = 0;

    Pengulangan For .. Do

    Pengulangan For .. Do merupakan perintah pengulangan yang paling sederhana diantara

    perintah pengulangan lain yang disediakan oleh Delphi. Pengulangan For .. Do digunakan

    untuk melaksanakan pengulangan satu pernyataan atau satu blok program beberapa kali

    yang ditentukan oleh nilai awal dan nilai akhir. Dengan kata lain, jumlah pengulangan yang

    akan dikerjakan sudah diketahui.

    Syntax :

    for := to do ;

    Atau :

    for := downto do ;

  • H E K A Modul Pemrograman Lanjutan

    - 28 - Mengenal Pemrograman Delphi

    adalah variabel bertipe ordinal, yaitu variabel yang mempunyai nilai pasti jika

    dikurangi atau ditambah satu satuan, misalnya byte, integer, dan lain-lain. Nilai

    tidak boleh diubah dalam .

    Contoh :

    for i := 1 to 20 do Jumlah := Jumlah + 1; J := 20; for i := 1 to j do begin Jumlah := Jumlah + 1; j := j + 1; end;

    2.3. Latihan

    Desainlah sebuah form berikut pada Form Designer. Kemudian simpan dengan dengan nama :

    Unit : UHitung.pas Project : Hitung.dpr

  • H E K A Modul Pemrograman Lanjutan

    - 29 - Mengenal Pemrograman Delphi

    Kemudian ketiklah kode program berikut ini pada Code Editor : unit untHitung; interface ... type TForm1 = class(TForm) Label1: TLabel; ... procedure IsiData; procedure btnTambahClick(Sender: TObject); procedure btnKurangClick(Sender: TObject); procedure btnKaliClick(Sender: TObject); procedure btnBagiClick(Sender: TObject); procedure btnPangkatClick(Sender: TObject); procedure btnDivClick(Sender: TObject); procedure btnModClick(Sender: TObject); procedure btnKeluarClick(Sender: TObject); private { Private declarations } public Nilai1, Nilai2, Tanya : Integer; Hasil : Real; { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.IsiData; begin Nilai1 := StrToInt(edtNilai1.Text); Nilai2 := StrToInt(edtNilai2.Text); end; procedure TForm1.btnTambahClick(Sender: TObject); begin IsiData; Hasil := Nilai1 + Nilai2; lblHasil.Caption := FloatToStr(Hasil); end; procedure TForm1.btnKurangClick(Sender: TObject); begin IsiData; Hasil := Nilai1 - Nilai2; lblHasil.Caption := FloatToStr(Hasil); end;

  • H E K A Modul Pemrograman Lanjutan

    - 30 - Mengenal Pemrograman Delphi

    procedure TForm1.btnKaliClick(Sender: TObject); begin IsiData; Hasil := Nilai1 * Nilai2; lblHasil.Caption := FloatToStr(Hasil); end; procedure TForm1.btnBagiClick(Sender: TObject); begin IsiData; Hasil := Nilai1 / Nilai2; lblHasil.Caption := FloatToStr(Hasil); end; procedure TForm1.btnPangkatClick(Sender: TObject); begin IsiData; Hasil := Exp(Nilai2 * ln(Nilai1)); lblHasil.Caption := FloatToStr(Hasil); end; procedure TForm1.btnDivClick(Sender: TObject); begin IsiData; Hasil := Nilai1 div Nilai2; lblHasil.Caption := FloatToStr(Hasil); end; procedure TForm1.btnModClick(Sender: TObject); begin IsiData; Hasil := Nilai1 mod Nilai2; lblHasil.Caption := FloatToStr(Hasil); end; procedure TForm1.btnKeluarClick(Sender: TObject); begin Tanya := Application.MessageBox('Are You Sure To Quit From This Program?', 'Confirmation', MB_YESNO + MB_ICONQUESTION); if Tanya = 6 then begin Application.MessageBox('Thanx So Much... For Using This Program', 'Byee.. Byee..', MB_OK + MB_ICONINFORMATION); Application.Terminate; end; end; end.

  • LATIHAN

    PEMROGRAMAN LANJUTAN

  • - 1 Latihan Pemrograman Delphi

    Latihan 1 Program Konversi Suhu Tampilan Form

    Listing Program procedure TForm1.BKonversiClick(Sender: TObject); begin if ECelcius.Text '' then begin EFahreinheit.Text := floattostr(strtofloat(ECelcius.Text)*9/5+32) + ''; EReamur.Text := floattostr(strtofloat(ECelcius.Text)*4/5) + ''; EKelvin.Text := floattostr(strtofloat(ECelcius.Text)+273); ECelcius.Text := ECelcius.Text + ''; BBersih.SetFocus; end; end; procedure TForm1.ECelciusKeyPress(Sender: TObject; var Key: Char); begin if key = #13 then BKonversi.Click; end; procedure TForm1.BBersihClick(Sender: TObject); begin ECelcius.Text:=''; EFahreinheit.Text:=''; EReamur.Text:=''; EKelvin.Text:=''; ECelcius.SetFocus; end;

  • - 2 Latihan Pemrograman Delphi

    procedure TForm1.BKeluarClick(Sender: TObject); begin if MessageDlg('Anda ingin keluar?',mtconfirmation,[mbyes]+[mbno],0)= mryes then begin Application.MessageBox('Terimakasih sudah menggunakan program ini!','Bye.. Byee..',MB_OK + MB_ICONINFORMATION); Application.Terminate; end; end; Latihan 2 Program Konversi Waktu Tampilan Form

    Listing Program Listing Program Buat Sendiri Ya.... !!!

  • - 3 Latihan Pemrograman Delphi

    Latihan 3 Program Pengaturan Teks Tampilan Form

    Listing Program procedure TForm1.RadioGroupWarnaClick(Sender: TObject); begin case RadioGroupWarna.ItemIndex of 0 : Labelteks.Font.Color := clBlack; 1 : Labelteks.Font.Color := clRed; 2 : Labelteks.Font.Color := clLime; end; end; procedure TForm1.RadioButtonSansSerifClick(Sender: TObject); begin if RadioButtonSansSerif.Checked = True then Labelteks.Font.Name := 'Ms Sans Serif'; end; procedure TForm1.RadioButtonComicSansClick(Sender: TObject); begin if RadioButtonComicSans.Checked = True then Labelteks.Font.Name := 'Comic Sans MS'; end;

  • - 4 Latihan Pemrograman Delphi

    procedure TForm1.CheckBoxGarisBawahClick(Sender: TObject); begin with Labelteks.Font do if CheckBoxGarisBawah.Checked = true then style := style + [fsUnderline] else style := style - [fsUnderline]; end; procedure TForm1.CheckBoxMiringClick(Sender: TObject); begin with Labelteks.Font do if CheckBoxMiring.Checked = true then style := style + [fsItalic] else style := style - [fsItalic]; end; procedure TForm1.SpinEditUkuranChange(Sender: TObject); begin if SpinEditUkuran.Text '' then Labelteks.Font.Size := SpinEditUkuran.Value; end; Latihan 4 Program Kalkulator Tampilan Form

    Listing Program procedure TForm1.BHItungClick(Sender: TObject); var nilai1, nilai2, hasil : integer;

  • - 5 Latihan Pemrograman Delphi

    begin nilai1 := StrToInt(ENilai1.Text); nilai2 := StrToInt(ENilai2.Text); case rgOperator.ItemIndex of 0 : begin hasil := nilai1 + nilai2; EHasil.Text:=inttostr(hasil); end; 1 : begin hasil := nilai1 - nilai2; EHasil.Text:=inttostr(hasil); end; 2 : begin hasil := nilai1 * nilai2; EHasil.Text:=inttostr(hasil); end; 3 : begin hasil := nilai1 div nilai2; EHasil.Text:=inttostr(hasil); end; 4 : begin hasil := nilai1 mod nilai2; EHasil.Text:=inttostr(hasil); end; end; end; procedure TForm1.ENilai1KeyPress(Sender: TObject; var Key: Char); begin if key=#13 then ENilai2.SetFocus; end; procedure TForm1.ENilai2Exit(Sender: TObject); begin rgOperator.ItemIndex:= 0; rgOperator.SetFocus; end; procedure TForm1.rgWarnaPilihanClick(Sender: TObject); begin case rgWarnaPilihan.ItemIndex of 0 : Form1.Color := clSkyBlue; 1 : Form1.Color := clMoneyGreen; end; end;

  • - 6 Latihan Pemrograman Delphi

    Latihan 5 Program Perhitungan Gaji Tampilan Form

    Listing Program procedure TForm1.btnProsesClick(Sender: TObject); var GajiPokok, Tunjangan, TunjKel, GajiKotor, Asuransi, Pajak, GajiBersih : Currency; begin if (cbGol.ItemIndex -1) and (cbStatus.ItemIndex -1) then begin case cbGol.ItemIndex of 0 : begin GajiPokok := 500000; Tunjangan := 100000; end; 1 : begin GajiPokok := 600000; Tunjangan := 100000; end; 2 : begin GajiPokok := 700000; Tunjangan := 100000; end; 3 : begin

  • - 7 Latihan Pemrograman Delphi

    GajiPokok := 1000000; Tunjangan := 300000; end; 4 : begin GajiPokok := 2000000; Tunjangan := 500000; end; end; case cbStatus.ItemIndex of 0 : TunjKel := 150000; 1 : TunjKel := 0; end; GajiKotor := GajiPokok + Tunjangan + TunjKel; Asuransi := 0.05 * GajiKotor; if GajiKotor >= 1000000 then Pajak := 0.1 * GajiKotor else Pajak := 0; GajiBersih := GajiKotor - Asuransi - Pajak; lblGajiPokok.Caption := FormatCurr('##,###,###',GajiPokok); lblTunjangan.Caption := FormatCurr('##,###,###',Tunjangan); lblTunjKel.Caption := FormatCurr('##,###,###',TunjKel); lblGajiKotor.Caption := FormatCurr('##,###,###',GajiKotor); lblAsuransi.Caption := FormatCurr('##,###,###',Asuransi); lblPajak.Caption := FormatCurr('##,###,###',Pajak); lblGajiBersih.Caption := FormatCurr('##,###,###',GajiBersih); end else begin Application.MessageBox('data pegawai belum lengkap' + chr(10) + 'isi data pegawai dengan lengkap','Pemberitahuan',Mb_ok + mB_iconError); edtNama.SetFocus; end; end; procedure TForm1.btnClearClick(Sender: TObject); begin edtNama.Clear; cbGol.ItemIndex := -1; cbStatus.ItemIndex := -1; lblGajiPokok.Caption := ''; lblTunjangan.Caption := ''; lblTunjKel.Caption := ''; lblGajiKotor.Caption := ''; lblAsuransi.Caption := ''; lblPajak.Caption := ''; lblGajiBersih.Caption := '';

  • - 8 Latihan Pemrograman Delphi

    edtNama.SetFocus; end; procedure TForm1.btnExitClick(Sender: TObject); begin Application.Terminate; end; Latihan 6 Program Perhitungan Nilai Tampilan Form

    Listing Program Listing Program Buat Sendiri Ya.... !!!

  • - 9 Latihan Pemrograman Delphi

  • - 10 Latihan Pemrograman Delphi

    Latihan 7 Program Tampilan Data Tampilan Form

  • - 11 Latihan Pemrograman Delphi

    Listing Program var FMahasiswa: TFMahasiswa; judul : string; i : integer; implementation {$R *.dfm} procedure TFMahasiswa.ENimKeyPress(Sender: TObject; var Key: Char); begin if key = #13 then ENama.SetFocus; if not (key in ['0'..'9',#13,#8]) then key := #0; end; procedure TFMahasiswa.ENamaKeyPress(Sender: TObject; var Key: Char); begin if key = #13 then ETTL.SetFocus; if not (key in ['a'..'z','A'..'Z',#13,#8,#32]) then key := #0; end; procedure TFMahasiswa.CheckBoxLainClick(Sender: TObject); begin if CheckBoxLain.Checked = true then begin ELain.Enabled := true; ELain.Visible := true; end else

  • - 12 Latihan Pemrograman Delphi

    begin ELain.Enabled := false; ELain.Visible := false; end; end; procedure TFMahasiswa.BBersihClick(Sender: TObject); begin ENim.Text:=''; ENama.Text:=''; ETTL.Text:=''; ELain.Text:=''; ComboBoxAgama.Text:=''; RGJK.ItemIndex:=-1; ComboBoxPendidkan.Text:=''; ComboBoxStudi.Text:=''; CheckBoxOlahraga.Checked:=false; CheckBoxKomputer.Checked:=false; CheckBoxKesenian.Checked:=false; CheckBoxLain.Checked:=false; RGPerkawinan.ItemIndex:=-1; RGBiaya.ItemIndex:=-1; ENim.SetFocus; end; procedure TFMahasiswa.BFotoClick(Sender: TObject); var namafile : string; begin if OpenPictureDialog1.Execute = false then exit; namafile := OpenPictureDialog1.FileName; Image1.Picture.LoadFromFile(namafile); end; procedure TFMahasiswa.BProsesClick(Sender: TObject); var JumlahBaris,Indeks : integer; TglLahir : tdate; biaya,perkawinan,jk,hobby : string; begin if CheckBoxOlahraga.Checked then hobby := 'Olahraga'; if CheckBoxKomputer.Checked and (hobby '') then hobby := hobby+',komputer' else if CheckBoxKomputer.Checked and (hobby = '') then hobby := 'komputer'; if CheckBoxKesenian.Checked and (hobby '') then hobby := hobby+',kesenian' else

  • - 13 Latihan Pemrograman Delphi

    if CheckBoxKesenian.Checked and (hobby = '') then hobby := 'kesenian'; if CheckBoxLain.Checked and (hobby '') then hobby := hobby + ','+ELain.Text else if CheckBoxLain.Checked and (hobby = '') then hobby := ELain.Text; if RGJK.ItemIndex =0 then jk := 'Laki-laki' else jk := 'Perempuan'; if RGPerkawinan.ItemIndex = 0 then perkawinan := 'Belum Menikah' else if RGPerkawinan.ItemIndex =1 then perkawinan := 'Menikah' else if RGPerkawinan.ItemIndex =2 then perkawinan := 'janda' else perkawinan := 'Duda'; if RGBiaya.ItemIndex = 0 then biaya := 'Ditanggung sendiri' else if RGBiaya.ItemIndex = 1 then biaya := 'Orangtua / keluarga' else biaya := 'Bea Siswa'; TglLahir := DPTLahir.Date; FMahasiswa.Height := 483; Panel2.Top := 20; ProgressBar1.Visible := true; JumlahBaris := 5000; ProgressBar1.Min := 0; ProgressBar1.Max := JumlahBaris; ProgressBar1.Position := 0; for Indeks := 1 to JumlahBaris do ProgressBar1.Position := Indeks; MessageDlg('DATA MAHASISWA SUDAH TERSIMPAN.' + chr(10) + ' ' + chr(10) + 'Nim : ' + ENim.Text + chr(10) + 'Nama : ' + ENama.Text + chr(10) + 'Tempat/Tanggal Lahir : ' + ETTL.Text + ' / ' + DateToStr(TglLahir) + chr(10) + 'Agama : ' + ComboBoxAgama.Text + chr(10) + 'Jenis Kelamin : ' + jk + chr(10) + 'Jenjang Pendidikan : ' + ComboBoxPendidkan.Text + chr(10) + 'Program Studi : ' + ComboBoxStudi.Text + chr(10) + 'Minat/Bakat : ' + hobby + chr(10) + 'Status Perkawinan : ' + perkawinan+chr(10) + 'Biaya Kuliah : ' + biaya,mtInformation,[mbok],0);

  • - 14 Latihan Pemrograman Delphi

    Image1.Picture := nil; ProgressBar1.Position :=0; ProgressBar1.Visible :=false; Panel2.Top := 20; FMahasiswa.Height := 513; end; procedure TFMahasiswa.FormCreate(Sender: TObject); begin judul := 'Form Data Mahasiswa STMIK Pontianak'; i := 0; end; procedure TFMahasiswa.BKeluarClick(Sender: TObject); begin if MessageDlg('Anda ingin keluar ?', mtConfirmation, [mbyes,mbno],0) = mryes then begin MessageDlg('Terima kasih anda telah menggunakan program ini', mtInformation, [mbOK], 0); Application.Terminate; end; end;

  • - 15 Latihan Pemrograman Delphi

    procedure TFMahasiswa.Timer1Timer(Sender: TObject); begin if i > Length(judul) then i := 0; i := i +1; FMahasiswa.Caption := copy(judul,1,i); end;

  • - 16 Latihan Pemrograman Delphi

    Latihan 8 Program Games Sederhana Tampilan Form

    Tampilan Form unit untGames; interface uses ... type TForm1 = class(TForm) ... procedure Selesai; procedure btnStartClick(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure btn1Click(Sender: TObject); procedure btn2Click(Sender: TObject); procedure btn3Click(Sender: TObject); procedure btn4Click(Sender: TObject); procedure edtNameKeyPress(Sender: TObject; var Key: Char); procedure Timer2Timer(Sender: TObject); procedure Timer3Timer(Sender: TObject); private { Private declarations } public

  • - 17 Latihan Pemrograman Delphi

    Tukar, Score, Tanya : Integer; Blink : Boolean; { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Selesai; begin Timer1.Enabled := False; btn1.Enabled := False; btn2.Enabled := False; btn3.Enabled := False; btn4.Enabled := False; edtName.Enabled := True; edtName.SetFocus; lblClick.Visible := False; end; procedure TForm1.btnStartClick(Sender: TObject); begin Score := 0; Tukar := 0; lblClick.Visible := True; lblClick.Left := 16; lblBravo.Caption := ''; lblBravo.Visible := False; edtName.Enabled := False; edtName.Clear; Timer1.Enabled := True; btn1.Enabled := True; btn2.Enabled := True; btn3.Enabled := True; btn4.Enabled := True; lblScore.Caption := '0'; end; procedure TForm1.Timer1Timer(Sender: TObject); var CapTmp : String; begin CapTmp := btn1.Caption; btn1.Caption := btn2.Caption; btn2.Caption := btn3.Caption; btn3.caption := btn4.Caption;

  • - 18 Latihan Pemrograman Delphi

    btn4.Caption := CapTmp; Inc(Tukar); if Tukar > 16 then Selesai; end; procedure TForm1.btn1Click(Sender: TObject); begin if btn1.Caption = 'x' then Score := Score + 10 else Score := Score - 5; lblScore.Caption := IntToStr(Score); end; procedure TForm1.btn2Click(Sender: TObject); begin if btn2.Caption = 'x' then Score := Score + 10 else Score := Score - 5; lblScore.Caption := IntToStr(Score); end; procedure TForm1.btn3Click(Sender: TObject); begin if btn3.Caption = 'x' then Score := Score + 10 else Score := Score - 5; lblScore.Caption := IntToStr(Score); end; procedure TForm1.btn4Click(Sender: TObject); begin if btn4.Caption = 'x' then Score := Score + 10 else Score := Score - 5; lblScore.Caption := IntToStr(Score); end; procedure TForm1.edtNameKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin lblBravo.Visible := True; if Score >= 50 then lblBravo.Caption := 'Bravooo... ' + edtName.Text

  • - 19 Latihan Pemrograman Delphi

    else lblBravo.Caption := 'Not Lucky ' + edtName.Text; btnStart.SetFocus; end; end; procedure TForm1.Timer2Timer(Sender: TObject); begin Blink := not Blink; if Blink then lblBravo.Font.Color := clRed else lblBravo.Font.Color := clBlue; end; procedure TForm1.Timer3Timer(Sender: TObject); begin if lblClick.Left

  • - 20 Latihan Pemrograman Delphi

    Latihan 9 Multiple Form Tampilan Form Splash

    unit untSplash; interface uses ... type TfrmSplash = class(TForm) procedure FormCreate(Sender: TObject); procedure Timer1Timer(Sender: TObject); private { Private declarations } public x : Integer; { Public declarations } end; var frmSplash: TfrmSplash; implementation uses untUtama; {$R *.dfm} procedure TfrmSplash.FormCreate(Sender: TObject); begin Timer1.Enabled := True; x := 1; end; procedure TfrmSplash.Timer1Timer(Sender: TObject); begin x := x + 1; if x = 7 then begin frmUtama.Show;

  • - 21 Latihan Pemrograman Delphi

    frmSplash.Destroy; end; end; end. Tampilan Form Utama

    unit untUtama; interface uses .... type TfrmUtama = class(TForm) procedure Pilih; procedure btnForm1Click(Sender: TObject); procedure btnForm2Click(Sender: TObject); procedure btnExitClick(Sender: TObject); procedure edtKecepatanKeyPress(Sender: TObject; var Key: Char); private { Private declarations } public Anim : Cardinal; { Public declarations } end; var frmUtama: TfrmUtama; implementation uses untForm1, untForm2;

  • - 22 Latihan Pemrograman Delphi

    {$R *.dfm} procedure TfrmUtama.Pilih; begin case cboTampil.ItemIndex of 0 : Anim := AW_BLEND; 1 : Anim := AW_CENTER; 2 : Anim := AW_HOR_POSITIVE; 3 : Anim := AW_HOR_NEGATIVE; 4 : Anim := AW_VER_POSITIVE; 5 : Anim := AW_VER_NEGATIVE; end; end; procedure TfrmUtama.btnForm1Click(Sender: TObject); begin Pilih; if edtKecepatan.Text '' then begin frmForm1.BringToFront; frmUtama.Hide; AnimateWindow(frmForm1.Handle, StrToInt(edtKecepatan.Text), Anim); frmForm1.Show; end; end; procedure TfrmUtama.btnForm2Click(Sender: TObject); begin Pilih; if edtKecepatan.Text '' then begin frmForm2.BringToFront; frmUtama.Hide; AnimateWindow(frmForm2.Handle, StrToInt(edtKecepatan.Text), Anim); frmForm2.Show; end; end; procedure TfrmUtama.btnExitClick(Sender: TObject); begin Application.Terminate; end; procedure TfrmUtama.edtKecepatanKeyPress(Sender: TObject; var Key: Char); begin if not (((key >= '0') and (key

  • - 23 Latihan Pemrograman Delphi

    end.

  • - 24 Latihan Pemrograman Delphi

    Tampilan Form1

    unit untForm1; interface uses

    ... type TfrmForm1 = class(TForm) procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure lblBackMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure lblForm2MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure lblBackClick(Sender: TObject); procedure lblForm2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var frmForm1: TfrmForm1; implementation uses untUtama, untForm2; {$R *.dfm} procedure TfrmForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin lblBack.Font.Color := clNavy; lblBack.Font.Style := lblBack.Font.Style + [fsBold];

  • - 25 Latihan Pemrograman Delphi

    lblForm2.Font.Color := clNavy; lblForm2.Font.Style := lblForm2.Font.Style + [fsBold]; end; procedure TfrmForm1.lblBackMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin lblBack.Font.Color := clRed; lblBack.Font.Style := lblBack.Font.Style - [fsBold]; end; procedure TfrmForm1.lblForm2MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin lblForm2.Font.Color := clRed; lblForm2.Font.Style := lblForm2.Font.Style - [fsBold]; end; procedure TfrmForm1.lblBackClick(Sender: TObject); begin frmForm1.Hide; frmUtama.Show; end; procedure TfrmForm1.lblForm2Click(Sender: TObject); begin frmForm1.Hide; frmForm2.Show; end; end.

  • - 26 Latihan Pemrograman Delphi

    Tampilan Form2

    unit untForm2; interface uses ... type TfrmForm2 = class(TForm) procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure lblBackMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure lblForm1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure lblBackClick(Sender: TObject); procedure lblForm1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var frmForm2: TfrmForm2; implementation uses untForm1, untUtama; {$R *.dfm} procedure TfrmForm2.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);

  • - 27 Latihan Pemrograman Delphi

    begin lblBack.Font.Color := clNavy; lblBack.Font.Style := lblBack.Font.Style + [fsBold]; lblForm1.Font.Color := clNavy; lblForm1.Font.Style := lblForm1.Font.Style + [fsBold]; end;

  • - 28 Latihan Pemrograman Delphi

    procedure TfrmForm2.lblBackMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin lblBack.Font.Color := clRed; lblBack.Font.Style := lblBack.Font.Style - [fsBold]; end; procedure TfrmForm2.lblForm1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin lblForm1.Font.Color := clRed; lblForm1.Font.Style := lblForm1.Font.Style - [fsBold]; end; procedure TfrmForm2.lblBackClick(Sender: TObject); begin frmForm2.Hide; frmUtama.Show; end; procedure TfrmForm2.lblForm1Click(Sender: TObject); begin frmForm2.Hide; frmForm1.Show; end; end.

  • - 29 Latihan Pemrograman Delphi

    Delphi Tricks Code Code Edit Input Number procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if not (((key >= '0') and (key