Kamis, 29 Oktober 2009

TERAPI RESTRUKTURISASI KOGNITIF


Percaykan Diri Anda
Apabila kita mengingat kembali kapan Anda merasa cemas, dan Anda telah mencatat apa yang Anda pikirkan tentang apa saja yang menyebabkan diri Anda cemas, serta kapan saja waktu Anda merasa cemas. Secara tidak langsung Anda telah mencoba untuk aktif melakukan counter terhadap pikiran negatif yang membuat Anda cemas.
Tentunya Anda akan dapat merasakan hasil dari pikiran Anda yang mengubah emosi yang tadinya cemas menjadi tenang. Jika Anda menyadarinya, hal inilah termasuk dalam terapi kognitif.


Asal Mula Terapi Kognitif
Pada awalnya, terapi kognitif memiliki pengertian sebagai suatu bentuk psikoterapi singkat yang dapat dilakukan secara mandiri oleh individu. Terapi kognitif pertama kali dikemukakan oleh Aeron Beck [Safaria, 2005]. Dasar dari etnik terapi kognitif ini sangat sederhana. Pertama, apabila individu sedang mengalami depresi atau kecemasan, maka individu tersebut akan berfikiir secara tidak logis/negatif dan secara tidak sadar akan melakukan tindakan yang menyalahkan diri sendiri. Kedua, apabila individu dapat melakukan sesuatu dengan sedikit usaha, individu akan dapat melatih diri untuk meluruskan pola pikiran individu tersebut. Ketiga, apabila individu dapat menghilangkan gejala rasa sakit, individu akan bahagia dan produktif kembali serta mulai menghargai diri sendiri. Keempat, sasaran untuk menghilangkan gangguan mood dapat dicapai dalam waktu relatif singkat dengan mengunakan metode-metode yang langsung pada tujuan.





Dialog internal
Merupakan self talking yang berisi sederetan pikiran yang mengalir terus dalam diri

Peristiwa eksternal

Mood
Merupakan perasaan yang di ciptakan oleh pikiran-pikiran




Gambar 9.1 Hubungan antar dunia dan perasaan (adaptasi burn, 1998).




Bentuk-Bentuk Distori Kognitif
Penilaian–penilaian yang terjadi dalam individu, diolah dan sangat ditentukan oleh seberapa baik pengamatan individu tersebut pada suatu situasi. Tidak jarang penilaian tersebut mengalami kekacauan kognitif atau sering disebut distori kognitif. Menurut Burn[1998] dari penelitiannya selama bertahun-tahun ada sepuluh distori atau kekacauan kognitif yang dapat mengakibatkan kegalauan emosi.
Distori kognitif yang terjadi dalam pikiran individu dapat dijabarkan sebagai berikut.
1. Pemikiran “segalanya atau tidak sama sekali”. Hal ini menujukan segala sesuatu dari kategori hitam atau putih secara eksterm.
2. Terlalu mengeneralisasi [over generalisasi], yaitu memandang peristiwa yang negatif sebagai sebuah kekalahan tanpa akhir.
3. filter mental, yaitu menemukan hal kecil yang negatif dan terus memikirkannya sehingga pandangan dalam diri individu menjadi gelap
4. Mendiskualisifikasi yang positif, yaiyu menolak pengalaman-pengalaman positif dengan bersikeras bahwa semua itu ’bukan apa-apa’.
5. Loncatan kesimpulan, yaitu membuat sebuah penafsiran negatif walaupun tidak ada fakta yang jelas untuk mendukung kesimpulan.
Loncatan kesimpulan terbagidua antara lain:
a. Membaca pikiran ,yaitu sewenang-wenang dalam manyimpulkan bila ada seseorang yang bereaksi negatif terhadap diri individu yang merasakannya.
b. Kesalahan peramal, pengharapan terhadapsegala sesuatu akan berubah menjadi sangat buruk dan pengharapan tersebut membuat diri individu yang merasakannya sangat yakin bahwa ramalan yang dilakukannya merupakan suatu fakta yang pasti.
6. Pembesaran [pembencanaan] dan pengecilan, yaitu melebih-lebihkan pentingnya segala sesuatu hal [misalnya kesuksesan orang lain atau kesalahan diri sendiri].
7. Penalaran emosional, yaitu menganggap bahwa emosi-emosi negatif mencerminkan bagaimana sebenarnya realita.
8. Pernyatan harus, yaitu mencoba menggerakan diri sediri dengan ’harus’ serta’ seharusnya tidak’, seolah-olah harus dicambuk untuk melakukan sesuatu.
9. Memberi cap salah/salah memberi cap, yaitu suatu bentuk ekstrem dari overgeneralisasi, selain menguraikan kesalahan dalam diri individu, individu memberi sebuah cap yang negatif pada diri sendiri.
10. Personalisasi, yaitu memandang diri sebagai penyebab dari suatu peristiwa eksternal yang negatif.
Untuk penanganan secara itensif dalam penangulangan masalah kecemasan dan marah, Anda dapat mengunakan beberapa teknik terapi kognitif sebagai berikut.
o Pencatatan pikiran negatif.
o Pembuatan lembar kesenangan.
o Menvisualisasikan keberhasilan.
o Teknik self control and manajement.
o Teknik problem solving


Penerapan Praktis Terapi Kognitif untuk Penanganan Kecemasan Menghadapi Masa Sulit
Teknik terapi kognitif yang akan Anda lakukan adalah terapi aktif. Pada prosesnya Anda diharapkan aktif untuk melaksakan setiap langkah-langkahnya, sehingga hal tersebut akan dapat menolong diri Anda sendiri untuk mengubah cara berfikir dan perilaku secara lebih kooperatif. Untuk itu, lakukan enam langkah berikut ini.
1. Ambil kertas kosong dan alat tulis.
2. Gunakan imajinasi dalam pikiran Anda.
3. Latihlah diri sendiri untuk mengenali serta mencatat pemikiran-pemikiran yang sifatnya mencela/mengkritik diri sendiri, pada saat hal itu melintas dibenak Anda.
4. Pelajarilah apa sebab pikiran-pikiran ini terdistori.
5. Pratikkan dengan cara membantah semua itu untuk mengembangkan suatu system evaluasi diri yang lebih realitis.
6. Susunlah agenda Anda dengan kegiatan –kegiatan yang positif.
Metode yang efektif untuk mencapai langkah-langkah di atas, dapat berupa atau tahapan/sesi. Tahapan pertama dalam penanganan tekanan emosi pada masa sulit, berawal catatan harian pemikiran negatif, yang berguna untuk memberikan pemahaman tentang emosi negatif pada diri Anda. Sedangkanuntuk meningkatkan motivasi aktivitas tidak terganggu, maka teknik lembar ramalan kesenangan, teknik menvisualisasikan keberhasilan [sugesti positif], dan teknik latihan relaksasi dapat manjadi tahapan kedua. Pelaksanaan kegiatan taknik self control, self manajement dan problem solving untuk memodifikasikan perilaku Anda yang mengalami kecemasan dapat menjadi tahapan ketiga.


Langkah-Langkah untuk Mengisi Catatan Harian Pemikiran Negatif
 Tuliskan secara ringkas kejadian aktual yang menimbulkan emosi yang tidak menyenangkan pada kolom situasi.
 Tentukanlah seduh/cemas/marah ataupun perasaan lain yang sedang dirasakan oleh diri Anda di saat situasinya berlangsung. Tentukan kadar emosinya dari 1-100%.
 Tuliskan pemikiran-pemikiran otomatis yang menyertai emosi tersebut.
 Identifikasi distori yang hadir di setiap pemikiran otomatis tersebut, dengan memakai beberapa jenis distori kognitif yang berhubungan dengan kecemasan/marah.
 Tuliskan tanggapan rasionol terhadap pemikiran otomatis.
 Tentukan dan hitung kadar emosi secara berurutan diakhir kegiatan yang telah berlangsung. Kadarnya 0-100%.
 Terakhir rasakan manfaat dari catatan harian pemikiran negatif.

Satu Peringatan untuk Pengisian catatan Harian Pemikiran Negatif
 Jangan mengunakan kata mengambarkan reaksi emosional di dalam mengisi kolom pemikiran otomatis.
 Saat pertama pencatatan ini dilakukan, mungkin Anda berfikir bahwa hal ini terlalu sederhana dan tidak ada manfaatnya, maka hal ini akan menyebabkan Anda tidak mau memotivasi diri Anda sendiri. Maka cobalah dan rasakan manfaatnya.
 Lakukan sekurang-kurangnya 10-15 menit sehari untuk jangka waktu satu minggun ke depan/satu atau dua bulan.
 Ingatkan pemikiran negatif Anda ini dengan mengunakan teknik umpan balik mental yang mengunakan alat penghitung.
 Jika mengalami kesulitan dalam mengisi tanggapan rasional, karena adanya pemikiran-pemikiran yang terjadi, maka gunakan teknik bantahan TETAPI. Sering kali kita mengunakan alasan TETAPI untuk melemahkan diri kita sendiri.

Table 9.2 Kolom Pambantahan TETAPI
Kolom TETAPI Pembantahan TETAPI
Saya akan memperbaiki pekerjaan saya lagi, tetapi saya masih banyak pekerjaan yang lain.



Tapi selain pekerjaan saya masih banyak, saya malas untuk ketemu bos lagi.


Tetapi saya terlalu lelah.
karena oekerjaan tersebut merupakan kewajiban saya, maka saya akan melaksanakanny dengan dengan baik dan senang hati.

Tidak akan menyita banyak waktu untuk melaksanakan pekerjaan itu, tentunya saya akan berhasil dalam memperbaiki tugas tersebut.

Maka saya akan mengerjakan tugas sebagian, lalu saya istirahat.


Langkah-Langkah Mengisi Kolom Pembantahan TETAPI
 Tuliskan kolom TETAPI apabila ada pikiran yang menyangkut dalam benak Anda saat Anda akan mengisi tanggapan rasional.
 Lakukanlah selama pikiran tersebut masih menyelimuti benak Anda, sampai pada saat Anda kehabisan dalih TETAPI.
 Isilah kolom TETAPI dengan berzigzag mengikuti pola pikir Anda di saat Anda memperdebatkan masalah tersebut di benak Anda.

Membuat Lembaran Kesenangan
Setelah membuat pencatatan pemikiran negatif , selanjutnya adalah mengisi lembar kesenangan untuk merangkai kegiatan kita, sehingga terhindar dari kegiatan yang menimbulkan persepsi negatif terhadap suatu keadaan.
Berikut langkah-langkah untuk mengisi lembaran ramalan kesenangan.
 Tuliskan dan jadwalkan sejumlah kegiatan yang memungkinkan terjadinyaa ataupun kepuasan pribadi pada pagi harinya.
 Lakukanlah sejumlah diantaranya sendirian dan sejumlah lainnya dengan orang lain, dan catatlah dengan siapa akan melakukan kegiatan tersebut.
 Ramalkan seberapa memuaskannya nantinya, antara 0-100%, lalu mulailah lakukan.
 Dalam kolom kepuasan aktual, tuliskanlah seberapa menyenangkan masing-masing kegiatan tersebut, 0-100% diakhir hari.
Catatan
 Setelah Anda mengatahui potensi Anda sangat besar atas kesenangan maka Anda selalu memproduksi kesenangan Anda setiap hari.

Langkah-langkah Konkret Memvisualisasikan Keberhasilan
 Buatlah daftar semua pikiran positif tentang semua hal yang akan dihadapi.
 Tuiliskan sebanyak-banyaknya pikiran positif tersebut, sebanyak yang dapat Anda pikirkan.
 Khayalkanlah semua isi daftar pikiran positif tersebut, disaat sebelum tidur.
 Biarkanlah tubuh menjadi santai dan rileks, lepaskan semua ketegangan.
 Biarkan imajinasi Anda masuk kedalam pikiran Anda menjadi sugesti positif, dan rangkaikanlah seluruh isi daftar pikiran positif tersebut, menjadi sebuah kalimat yang mudah Anda ingat.

Catatan
 Lakukanlah pada saat Anda akan tidur setiap harinya, dengan santai dan serileks mungkin.
 Cukup dilakukan dalam waktu 10 menit sebelum Anda tidur.


Teknik Self Control and Self Management
Teknik ini terdiri atas pencatatan diri [self recording], evaluasi diri [self evaluations], dan pengukuan diri [self reinsforcement](Ronen,1993;safaria,2005).
 Self Recording
Self Recording ini sering disamakan dengan istilsh observasi diri [self observation] atau monitoring diri [self monitoring]. Pencatatan ini dapat dilakukan dengan mengunakan tabel, buku diary, atau dengan mengunakan bukun saku.
 Self Evaluation
Selt evaluation, biasanya mengunakan skor atau penilaian terhadap diri sendiri. Skor tersebut berkisar antara 50-100%.
 Self Reinforcement
Pengukuhan diri ini bertujuan untuk memberikan pembelajaran positif pada individu di saat masa sulit.

Langkah –langkah Mengisi Kolom Pencatatan Self Control [kendali diri]
 Tuliskanlah hari dan tanggal, pada saat Anda menuliskan semua pertanyaan konkret.
 Tuliskanlah pertnyaan [apakah] atau kalimat pasti yang sekonkret-konkretnya dalam kolom pertnyaan.
 Jawaban Ya [berarti positif] dan jawaban tidak [berarti negatif]
 Berilah pengukuhan apabila ada jawaban Anda yang sangat Anda hargai yang berarti positif.
 Berilah pengukuhan yang sewajarnya dengan kemampuan diri pribadi, seperti pengukuhan konkret [makanan, benda yang di sukai] dan pengukuhan simbolis [senyuman, pujian, penghargaan berupa kata-kata mutiara untuk diri sendiri]

Langkah-langkah Mengisi Pencatatan Self Manajenent
 Pilihlah kegiatan positif Anda yang Anda tulis pada pencatatan self control dan self evaluation pada malam hari setelah Anda melakukan evaluasi kegiatan positif dan negatif Anda.
 Berilah penilaian aktual pada kegiatan yang telah Anda lakukan dengan mengunakan skor 50-100%.
 Berilah pengukuhan apabila ada jawaban Anda yang sangat Anda hargai yang berarti positif dan memiliki penilaian persentase actual sebesar 100%.
 Berilah pengukuhan yang sewajarnya dengan kamampuan diri pribadi, seperti pengukuhan konkret [makanan, benda yang disukai] dan pengukuhan simbolis [senyuman, pujian, penghargaan berupa kata-kata mutiara untuk diri sendiri].

Teknik Problem solving
Secara teoritis, jika seorang individu mamiliki ketrampilan problem solving yang baik, maka individu tersebut akan dapat lebih sensitif terhadap permasalahan interpersonal, berpikir sebab akibat, dan kesiapanya untuk memprediksi perilakunya untuk masa depanya sangat baik.tentunya strategi untuk dapat menerapkan teknik keterampilan problem solving pada akhirnya dilakukan secara bertahap [step by-step principal].
Secara umum ada tujuh dalam proses pemecahan masalah yang dapat diterapkan untuk dapat dilaksanakan, yaitu sebagai berikut.
1. Identivikasi masalah.
2. Menetapkan tujuan dari pemecahan masalah.
3. Mengembangkan berbagai alternatif solusi sebanyak mungkin.
4. Mengevaluasi alternatif solusi yang ada.
5. Memilih alternatif yang ada.
6. Menerapkan solusi tersebut.
7. Mengevaluasi hasil penerapan solusi tersebut. Read More..
Manajemen Emosi


Management Emosi merupakan pengelolaan emosi diri kita dalam menghadapi suatu masalah. Pengelolaan emosi tersebut sangat penting kita lakukan dalam menghadapi suatu masalah karena dalam memecahkan suatu masalah harus disertai dengan emosi yang benar-benar terkontrol. Banyak orang yang kurang bisa mengontrol emosi pada saat menyelesaikan masalah dan ujung-ujungnya masalah yang seharusnya ia selesaikan malah menjadi tambah rumit dan sulit untuk diselesaikan. Dalam hal ini emosi sangat berperan sekali.
Banyak literatur yang mengatakan bahwa dalam hidup ini kecerdasan intelektual saja tidak cukup, tetapi harus diimbangi dengan kecerdasan emosional. Secara garis besar ada dua hal utama dalam kecerdasan emosi, yaitu mengenali dan mengelola emosi. Dengan pengelolaan emosi yang baik kecerdasan emosi dapat memberikan sumbangsih cukup besar untuk kebahagiaan seseorang. Ahli kecerdasan emosi, Goleman menceritakan sebuah kisah menarik mengenai hal tersebut. Mari kita menyimaknya!
Penn seorang mahasiswa yang cemerlang dan kreatif, sesuai dengan syarat yang ditetapkan oleh Yale University. Masalah yang dihadapi oleh Penn adalah bahwa ia sadar akan keluarbiasaan dirinya. Karena itu, seperti kata seorang profesor, mahasiswa ini “luar biasa sombong.” Penn, kendati sangat hebat, tidak disukai orang lain, terutama oleh orang yang harus bekerjasama dengannya.
Meskipun begitu, nilainya sangat mengagungkam dalam ujian-ujian tertulis. Setelah lulus, Penn menjadi incaran utama semua perusahaan. Berbagai perusahaan terkemuka dalam bidang terkait menawarinya wawancara untuk bekerja, dan ia memang yang terbaik—setidaknya kalau dilihat dari resumenya. Namun, karena keangkuhannya, hanya satu perusahaan yang menawari Penn pekerjaan. Itu pun perusahaan kelas dua.
Matt, seorang mahasiswa Yale lain yang sejurusan dengan Penn, secara akademik tidak begitu cemerlang. Namun, ia pandai bergaul sehingga disukai oleh setiap orang yang bekerjasama dengannya. Sesudah lulus, Matt diterima bekerja oleh tujuh dari delapan perusahaan yang mewawancarainya. Matt terus sukses dalam bidangnya, sementara Penn dipecat kendati baru dua tahun bekerja di perusahaan yang pertama kali menerimanya.
Matt memiliki kecerdasan emosi sedangkan Penn tidak (Goleman, Warking, hal.22)
Dari cerita diatas dapat diambil hikmah, dalam mencapai kesuksesan tidak semata-mata mengandalkan kecerdasan intelektual, tetapi butuh juga management emosi. Tetapi bukan berarti bahwa kecerdasan intelektual tidaklah penting. Bukan. Masalahnya adalah seberapa besar ketergantungan kita dengan kecerdasan intelektual. Semakin kita menggantungkan kehidupan ini hanya kepada kecerdasan intelektual, dan mengabaikan kecerdasan emosi, maka bisa dipastikan kehidupan kita pun akan semakin jauh dari kesuksesan. Maka selayaknya, kita tetap memberikan porsi yang seimbang antara kecerdasan intelektual dan kecerdasan emosi. Bahkan, sangat dianjurkan kepada kita untuk lebih mengedepankan kecerdasan emosi, karena kecerdasan inilah yang akan mengantarkan kita menuju kesuksesan hidup.
Keberhasilan seseorang tidak semata-mata ditentukan oleh indeks prestasi (IP), atau predikat lulusan terbaik dari segi akademis. Justru, mereka yang memiliki pengendalian diri, motivasi diri, tidak gampang emosional, sabar, inisiatif, besar kemungkinan untuk mencapai kehidupan sukses dan bahagia dengan lebih mudah.
Goleman kembali bercerita bagaimana bodohnya orang yang tidak cerdas emosi meskipun ia termasuk orang yang sangat pintar secara intelektual atau rasio. Mari kita simak bersama…
Jason H, seorang siswa kelas dua di SMU Coral Springs, Florida. Disekolahnya, ia selalu memperoleh nilai A. Dia bercita-cita masuk fakultas Kedokteran. Bukan sekedar fakultas kedokteran biasa, ia memilih Harvard untuk melabuhkan cita-citanya. Tetapi, cita-citanya seketika kandas saat Pologruto, guru Fisikanya memberi nilai 80 pada sebuah tes. Jason tak mau menerima kenyataan itu. Pada suatu hari, ia pun datang ke sekolah dengan membawa sebilah pisau dapur ke sekolah. Ia juga bertengkar dengan guru fisikanya, Pologruto. Di dalam laboratorium fisika, ia menusuk gurunya di tulang selangka sebelum ia ditangkap dengan susah payah.
Oh, my God! Realita yang mengerikan. Seseorang dengan kecerdasan otak yang tak diragukan, ternyata belum memiliki pengendalian emosi yang baik. Hawa nafsu dan keinginan yang tak tercapai justru membawa mereka bertindak di luar kendali. Padahal, secara rasional, mana mungkin orang berotak cerdas mau melakukan tindakan yang di luar nalar. Sungguh tidak mungkin! Tapi, inilah realita. Orang yang tidak memiliki kecerdasan emosi, dan hanya mengandalkan kecerdasan rasio saja, justru memiliki kemungkinan besar melakukan tindakan di luar kepala. Dari cerita tersebut telah terbukti bahwa management emosi itu sangat penting sekali.
Dalam kehidupan kita sehari-hari banyak sekali ditemui orang yang belum mampu memanagement emosi mereka. Ada Beberapa ciri-ciri orang yang tidak mampu mengandalikan emosinya :
1. Berkata keras dan kasar pada orang lain.
2. Marah dengan merusak atau melempar barang-barang di sekitarnya.
3. Ringan tangan pada orang lain di sekitarnya.
4. Melakukan tindak kriminal / tindak kejahatan.
5. Melarikan diri dengan narkoba, minuman keras, pergaulan bebas, dsb.
6. Menangis dan larut dalam kekesalan yang mendalam.
7. Dendam dan merencanakan rencana jahat pada orang lain. dsb…
Dengan management emosi yang buruk, niscaya orang tersebut akan jauh dari yang namanya kesuksesan. Nah, sekarang bagaimana cara kita untuk bisa memenage emosi kita. Ada beberapa cara untuk memenage emosi kita:
1. Rasakan Yang Orang Lain Rasakan
Cobalah bayangkan apabila kita marah kepada orang lain. Nah, sekarang tukar posisi di mana kita menjadi korban yang dimarahi. Bagaimana kira-kira rasanya dimarahi. Kalau kemarahan sifatnya mendidik dan membangun mungkin ada manfaatnya, namun jika marah membabi buta tentu jelas kita akan cengar-cengir sendiri.
2. Tenangkan Hati Di Tempat Yang Nyaman
Jika sedang marah alihkan perhatian kita pada sesuatu yang kita sukai dan lupakan segala yang terjadi. Tempat yang sunyi dan asri seperti taman, pantai, kebun, ruang santai, dan lain sebagainya mungkin tempat yang cocok bagi kita. Jika emosi agak memuncak mungkin rekreasi untuk penyegaran diri sangat dibutuhkan.
3. Mencari Kesibukan Yang Disukai
Untuk melupakan kejadian atau sesuatu yang membuat emosi kemarahan kita memuncak kita butuh sesuatu yang mengalihkan amarah dengan melakukan sesuatu yang menyenangkan dan dapat membuat kita lupa akan masalah yang dihadapi. Contoh seperti mendengarkan musik, main ps2 winning eleven, bermain gitar atau alat musik lainnya, membaca buku, chating, chayang-chayangan dengan kekasih pujaan hati, menulis artikel, nonton film box office, dan lain sebagainya. Hindari perbuatan bodoh seperti merokok, make narkoba, dan lain sebagainya.
4. Curahan Hati / Curhat Pada Orang Lain Yang Bisa Dipercaya
Menceritakan segala sesuatu yang terjadi pada diri kita mungkin dapat sedikit banyak membantu mengurangi beban yang ada di hati. Jangan curhat pada orang yang tidak kita percayai untuk mencegah curhatan pribadi kita disebar kepada orang lain yang tidak kita inginkan. Bercurhatlah pada sahabat, pacar/kekasih, isteri, suami, orang tua, saudara, kakek, nenek, paman, bibi, dan lain sebagainya.
5. Mencari Penyebab dan Mencari Solusi
Ketika pikiran kita mulai tenang, cobalah untuk mencari sumber permasalahan dan bagaimana untuk menyelesaikannya dengan cara terbaik. Untuk memudahkan gunakan secarik kertas kosong dan sebatang pulpen untuk menulis daftar masalah yang anda hadapi dan apa saja kira-kira jalan keluar atau solusi masalah tersebut. Pilih jalan keluar terbaik dalam menyelesaikan setiap masalah yang ada. Mungkin itu semua akan secara signifikan mengurangi beban pikiran anda.
6. Ingin Menjadi Orang Baik
Orang baik yang sering kita lihat di layar televisi biasanya adalah orang yang kalau marah tetap tenang, langsung ke pokok permsalahan, tidak bermaksud menyakiti orang lain dan selalu mengusahakan jalan terbaik. Pasti kita ingin dipandang orang sebagai orang yang baik.
7. Cuek Dan Melupakan Masalah Yang Ada
Ketika rasa marah menyelimuti diri dan kita sadar sedang diliputi amarah maka bersikaplah masa bodoh dengan kemarahan kita. Ubah rasa marah menjadi sesuatu yang tidak penting. Misalnya dalam hati berkata : ya ampun…. sama yang kayak begini aja kok bisa marah, nggak penting banget sich…
8. Berpikir Rasional Sebelum Bertindak
Sebelum marah kepada orang lain cobalah kita memikirkan dulu apakah dengan masalah tersebut kita layak marah pada suatu tingkat kemarahan. Terkadang ada orang yang karena diliatin sama orang lain jadi marah dan langsung menegur dengan kasar mengajak ribut / berantem. Masalah sepele jangan dibesar-besarkan dan masalah yang besar jangan disepelekan.
9. Diversifikasi Tujuan, Cita-Cita Dan Impian Hidup
Semakin banyak cita-cita dan impian hidup kita maka semakin banyak hal yang perlu kita raih dan kejar mulai saat ini. Tetapkan impian dan angan hidup kita setinggi mungkin namun dapat dicapai apabila dilakukan dengan serius dan kerja keras. Hal tersebut akan membuat hal-hal sepele tidak akan menjadi penting karena anda terlalu sibuk dengan rajutan benang masa depan anda. Mengikuti nafsu marah berarti membuang-buang waktu kita yang berharga.
10. Kendalikan Emosi Dan Jangan Mau Diperbudak Amarah
Orang yang mudah marah dan cukup membuat orang di sekitarnya tidak nyaman sudah barang tentu sangat tidak baik. Kehidupan sosial orang tersebut akan buruk. Ikrarkan dalam diri untuk tidak mudah marah. Santai saja dan cuek terhadap sesuatu yang tidak penting. Tujuan hidup kita adalah yang paling penting. Anggap kemarahan yang tidak terkendali adalah musuh besar kita dan jika perlu mintalah bantuan orang lain untuk mengatasinya.
11. Untuk meredam amarah orang lain sebaiknya kita tidak ikut emosi ketika menghadapi orang yang sedang dilanda amarah agar masalah tidak menjadi semakin rumit. Cukup dengarkan apa yang ingin ia sampaikan dan jangan banyak merespon. Tenang dan jangan banyak hiraukan dan dimasukkan dalam hati apa pun yang orang marah katakan. Cukup ambil intinya dan buang sisanya agar kita tidak ikut emosi atau menambah beban pikiran kita.
12. Jika marahnya karena sesuatu yang kita perbuat maka kalau bukan kesalahan kita jelaskanlah dengan baik, tapi kalau karena kesalahan kita minta maaf saja dan selesaikanlah dengan baik penuh ketenangan batin dan kesabaran dalam mengatasi semua kemarahannya. Lawan api dengan air, jangan lawan api dengan api. Semoga berhasil menjinakkan emosi rasa marah anda.
Hal tersebut diatas dapat membantu kita dalam memenage emosi kita. Dengan emosi yang terkendali insyaallah kita bisa menyelesaikan masalah dengan baik dan membuka jalan bagi kita untuk mencapai suatu kesuksesan. AMIN. Read More..

REAKTOR AIR DIDIH (BOILING WATER REACTOR, BWR)

REAKTOR AIR DIDIH (BOILING WATER REACTOR, BWR)

RINGKASAN
Reaktor Air Didih adalah salah satu tipe reaktor nuklir yang digunakan dalam Pembangkit
Listrik Tenaga Nuklir (PLTN). Reaktor tipe ini menggunakan air (H2O) sebagai pendingin dan
moderator. Moderator adalah medium untuk memperlambat kecepatan partikel neutron
cepat. Air pendingin digunakan untuk mengambil panas yang dihasilkan dalam teras reaktor
(reactor core) sehingga temperatur air akan naik. Temperatur air dibiarkan meningkat hingga
mencapai titik didih. Uap yang dihasilkan pada proses pendidihan air kemudian disalurkan
untuk memutar turbin yang terhubung dengan generator listrik. Dalam reaktor tipe ini, uap
yang terbentuk akan menyebabkan reaktivitas reaktor menjadi negatif. Reaktivitas negatif
dapat menahan kenaikan daya reaktor, sehingga penambahan reaktivitas (penaikan daya
reaktor) dapat dikendalikan secara stabil dengan batang kendali.
Pada saat ini reaktor tipe air didih telah banyak dioperasikan, bahkan modifikasi dari tipe
reaktor ini yang disebut Reaktor Air Didih Maju (Advanced Boiling Water Reactor, ABWR)
juga sudah mulai dioperasikan di beberapa negara maju. Keberadaan Reaktor Air Didih Maju,
pengembangan Reaktor Air Didih Kompak (Simplified Boiling Water Reactor, SBWR) oleh
General Electric, Amerika Serikat menjadi terhenti. Pengembangan reaktor tipe air didih tidak
berhenti sampai di sini. Perusahaan ABB-Atom sedang mengembangkan suatu reaktor air
didih yang mempunyai keselamatan dan efisiensi ekonomi yang tinggi dengan kode
BWR90+.
URAIAN
Reaktor nuklir tipe Reaktor Air Didih pertama kali dikembangkan oleh perusahaan General
Electric, Amerika Serikat. PLTN Dresden 1 dengan daya 200 MWe (Mega Watt electric)
merupakan PLTN dengan reaktor tipe air didih yang pertama kali dioperasikan secara
komersial pada Juli 1960. Setelah beroperasinya Dresden 1, General Electric banyak
mendapat pesanan dari perusahaan dari luar Amerika, di antaranya Siemens (KWU) -
Jerman, ABB-Atom - Swiss/Swedia, Toshiba-Jepang, dan Hitachi-Jepang.
1. Karakteristika Reaktor Air Didih
1.1 Konstruksi dasar
Bentuk konstruksi dari Reaktor Air Didih secara umum diperlihatkan pada Gambar 1.
Pada reaktor air didih, air pendingin dididihkan di dalam bejana reaktor sehingga
menghasilkan uap. Uap ini kemudian secara langsung dialirkan ke turbin yang memutar
generator listrik. Setelah uap air menggerakkan turbin, uap disalurkan ke kondenser dan
diubah menjadi air kembali. Dengan pompa utama, air kemudian dikembalikan ke bejana
reaktor. Sebagian air pendingin yang berada dalam bejana reaktor disirkulasi dengan
pompa (disebut pompa resirkulasi). Air yang keluar dari pompa resirkulasi disalurkan ke
bagian bawah teras reaktor melalui katup yang bekerja sebagai pompa jet. Tekanan dari
pompa resirkulasi ini akan menaikkan kecepatan aliran air pendingin dalam teras reaktor.
1.2 Konstruksi bejana tekan reactor
Konstruksi utama bejana tekan reaktor untuk Reaktor Air Didih dengan kapasitas daya
1100 MWe diperlihatkan dalam Gambar 2. Dalam bejana tekan ini terdapat sekumpulan
bahan bakar, batang kendali dan konstruksi penyangga yang membentuk suatu konstruksi
yang disebut teras reaktor. Di atas teras reaktor terdapat konstruksi perangkat pemisah
uap-air (steam separator) dan di atas perangkat pemisah terdapat perangkat pengering
uap. Pemasangan kedua perangkat ini ditujukan untuk menjamin agar uap yang akan
dipakai untuk memutar turbin benar-benar berupa uap kering.
Di bagian bawah teras terdapat perangkat pengendali daya reaktor berupa pengarah
batang kendali, penggerak batang kendali dan batang kendali. Dengan perangkat ini
batang kendali dapat bergerak dari bawah ke atas masuk ke teras reaktor melalui
pengarahnya. Di sekitar teras terdapat konstruksi lorong-lorong saluran pendingin dan
pompa jet.
Konstruksi perangkat bahan bakar diperlihatkan dalam Gambar 3. Salah satu contoh
perangkat bahan bakar terdiri atas 62 batang bahan bakar dan 2 batang yang berisi air
membentuk matriks 8 x 8. Bentuk susunan matriks batang bahan bakar dapat pula berupa
matriks 6 x 6 atau 9 x 9. Matriks kemudian dibungkus dengan lempeng logam Zirkalloy.
Keseluruhan susunan matriks batang bahan bakar dan pembungkusnya serta spacer
(penjaga jarak antar batang bahan bakar) ini disebut perangkat bahan bakar.
Batang bahan bakar yang jumlahnya 62 buah tersebut terbuat dari pipa Zirkalloy dan
berisi pelet uranium oksida. Pipa pembungkus pelet bahan bakar uranium oksida ini
disebut kelongsong. Di kedua ujung kelongsong terdapat ruang yang disebut plenum.
Dalam kelongsong juga terdapat pegas penekan pelet bahan bakar.
Dalam pelet bahan bakar terjadi reaksi fisi. Bahan hasil fisi ditampung dalam ruang
plenum, karena itu tekanan dalam kelongsong tidak melonjak terlalu besar. Konstruksi
batang kendali Reaktor Air Didih mempunyai bentuk seperti tanda + yang berada di antara
empat buah perangkat bahan bakar (Gambar 4).
Batang kendali berfungsi sebagai penyerap partikel neutron. Batang kendali terbuat dari
boron karbida dan atau hafnium. Pada bagian bawah perangkat kendali terdapat
konstruksi yang berbentuk payung yang dapat menghambat jatuhnya batang kendali ke
bawah (keluar dari teras) agar sesuai dengan batas kecepatan yang diperbolehkan. Pada
bagian bawah batang kendali ini juga terdapat suatu soket mekanik untuk
menghubungkan batang kendali dengan penggeraknya. Terdapat dua macam penggerak
batang kendali yaitu penggerak elektrik dan hidrolik. Untuk mempercepat gerak perangkat
batang kendali masuk ke teras terdapat perangkat akumulator yang menggerakkan
perangkat batang kendali dengan tekanan gas. Dalam kondisi kecelakaan atau kelainan
operasi yang dianggap membahayakan, keseluruhan perangkat batang kendali yang ada
harus segera dimasukkan ke dalam teras reaktor dengan kecepatan tinggi untuk
menghentikan reaktor. Penghentian reaktor secara mendadak oleh karena suatu sebab
yang dianggap membahayakan seperti ini disebut sebagai pancung daya (scram). Jika
perangkat batang kendali oleh karena suatu hal tak dapat dimasukkan ke teras reaktor
dan reaktor tidak dapat dihentikan pada temperatur rendah, maka dalam kondisi seperti ini
ke dalam reaktor dimasukkan cairan asam borat yang mampu menyerap partikel neutron
sehingga operasi reaktor dapat berhenti.
1.3 Pengendalian daya reactor
Reaktor air didih beroperasi pada tekanan 70 kg/cm2. Air pendingin mendidih dan
menghasilkan uap di dalam bejana reaktor. Air dalam kondisi uap dan cair disirkulasikan
kembali ke teras reaktor dengan menggunakan pompa sirkulasi. Dengan mengatur aliran
resirkulasi, reaktivitas reaktor, yang berarti juga daya reaktor, dapat dinaik-turunkan atau
dikendalikan. Ini adalah salah satu cara pengendalian reaktor air didih yang disebut
metode pengendalian resirkulasi.
Cara lain untuk menaikkan reaktivitas (daya reaktor) adalah dengan menarik batang
kendali dari teras reaktor. Jika batang kendali ditarik keluar dari teras, reaktivitas atau
reaksi fisi bertambah dan menghasilkan energi panas lebih banyak lagi (daya reaktor
naik). Energi panas ini akan mendidihkan air lebih banyak, dan dengan demikian uap
yang dihasilkan juga bertambah. Meningkatnya kandungan uap dalam air akan
menurunkan kemampuan air dalam memoderasi partikel neutron. Jumlah neutron
kecepatan rendah (neutron termal) yang akan menimbulkan reaksi fisi menjadi berkurang,
sehingga akibatnya reaksi fisi (reaktivitas) juga berkurang. Jadi menaikkan daya reaktor
dengan cara menarik batang kendali akan selalu dikompensasi oleh produksi uap yang
menekan daya. Proses kompensasi ini akan berakhir pada suatu kondisi stabil pada daya
setimbang tertentu. Sebaliknya jika batang kendali disisipkan masuk ke dalam teras,
reaksi fisi berkurang dengan hadirnya penyerap neutron (batang kendali) dalam teras.
Produksi uap yang dihasilkan juga menurun karena produksi energi panas dari reaksi fisi
berkurang. Akibatnya kemampuan air dalam memoderasi neutron bertambah, dan reaksi
fisi akan mulai meningkat. Proses penurunan daya oleh batang kendali yang kemudian
dikompensasi oleh penurunan daya karena membaiknya kemampuan moderasi akan
terus berlangsung hingga tercapai kondisi stabil pada suatu daya setimbang tertentu.
Fenomena kompensasi oleh uap-air menjadi salah satu sarana penting dalam
pengendalian-diri (self control) reaktor dan merupakan salah satu keunikan reaktor air
didih.
Dalam perpindahan panas, luas penampang penghasil panas dan perbedaan temperatur
sangat mempengaruhi jumlah panas yang dapat dipindahkan. Jika kondisi air dalam
keadaan pendidihan transisi, sifat perpindahan panas menjadi buruk dan temperatur
permukaan kelongsong bahan bakar akan naik. Dalam reaktor air didih, proses
perpindahan panas dilakukan dalam kondisi air mendidih, sehingga jika terjadi kecelakaan
atau anomali dalam operasi reaktor, perpindahan panas pada pendidihan transisi dapat
dihindarkan.
Pada reaktor air didih, jika terjadi perubahan beban (permintaan beban listrik dari luar),
pengendalian pembangkitan daya dilakukan dengan menaik-turunkan batang kendali
dalam teras reaktor atau dengan menyesuaikan kecepatan aliran resirkulasi air pendingin.
Pada saat terjadi penyesuaian terhadap permintaan beban, tekanan pendingin dalam
bejana reaktor dapat naik atau turun. Untuk mengatasi kenaikan dan penurunan tekanan
dalam bejana reaktor, digunakan cara pengendalian dengan mengatur bukaan katup uap
dari reaktor ke turbin. Metode ini disebut Reactor-master/Turbin-slave (metode mengikuti
beban). Jika pada suatu ketika, oleh suatu sebab yang tak terduga, turbin mendadak
berhenti, aliran uap yang menuju turbin dibelokkan ke jalur pintas (tidak melalui turbin)
melalui katup pintas. Dengan cara ini kenaikan tekanan yang cukup tinggi dalam bejana
reaktor dapat dihindarkan.
1.4 Sistem keselamatan rekayasa
Sebelumnya telah dijelaskan salah satu sistem keselamatan yang dapat menjamin reaktor
akan berhenti jika terjadi kondisi anomali / kecelakaan. Bila suatu ketika terjadi
kecelakaan yang menyebabkan pipa saluran air pendingin terputus atau bocor sehingga
pendinginan reaktor tidak cukup, maka fasilitas sistem pendinginan teras darurat
(Emergency Core Cooling System, ECCS) seperti terlihat pada Gambar 5-1 dan 5-2
bekerja. Dalam sistem ECCS ini terdapat sistem penyemprot teras (core spray system),
sistem susut-tekanan mandiri (self-depressurization system) dan penyemprot teras
tekanan rendah.
Pada saat terjadi kerusakan batang bahan bakar, air pendingin dari teras yang bertekanan
tinggi dan bertemperatur tinggi akan mengandung bahan radioaktif yang berasal dari
batang bahan bakar. Air pendingin yang mengandung bahan radioaktif tidak boleh keluar
dari reaktor karena berbahaya. Untuk menghindari lepasnya bahan radioaktif dalam
reaktor terdapat bejana reaktor yang berfungsi sebagai pengungkung (containment)
material berbahaya jika terjadi kecelakaan, dan terdapat juga katup isolasi yang
mengisolasi bejana reaktor dan sistem di luarnya. Peningkatan tekanan pada saat terjadi
isolasi bejana reaktor dihindari dengan sistem supresi. Sistem ini akan mengalirkan uap
yang terbentuk ke kolam supresi. Dalam kolam supresi yang berisi air, uap akan
besentuhan dengan air dan mengalami kondensasi yang mengakibatkan turunnya
tekanan uap.
Apabila kecelakaan berlangsung dalam waktu yang lama, teras reaktor dapat meleleh.
Kondisi ini akan menyebabkan terjadinya kenaikan tekanan yang diikuti dengan kenaikan
temperatur dalam bejana reaktor. Apabila bejana reaktor tidak didinginkan, struktur
bejana kemungkinan akan rusak. Untuk mengatasi hal ini, disediakan sistem penyemprot
untuk melakukan tugas-tugas pendinginan dan penurunan tekanan. Dalam hal terjadi
kebocoran bejana reaktor, disediakan pula sistem pengelolaan bocoran gas agar tetap
tidak menyebarluas ke lingkungan.
Pada kecelakaan kebocoran pendingin, temperatur bahan bakar dan kelongsongnya akan
naik. Kenaikan temperatur ini akan memicu reaksi antara air dan logam yang
menghasilkan gas hidrogen. Hidrogen yang bertemperatur tinggi ini dapat mengancam
keutuhan struktur bejana reaktor. Untuk mencegah kejadian ini, bejana reaktor dilengkapi
dengan ruang kosong khusus untuk menampung gas bentukan. Di samping itu, terdapat
fasilitas untuk mereaksikan hidrogen yang timbul, agar dapat bergabung kembali dengan
oksigen menjadi air.
2. Tipe/jenis reaktor air didih
Parameter utama dari reaktor air didih diperlihatkan pada Tabel 1, bentuk modifikasi
bahan bakar domestik pada Tabel 2, dan deskripsi bejana reaktor pada Gambar 6.
Reaktor air didih yang beroperasi pada saat ini (di Jepang) dapat digolongkan menjadi
dua tipe, yaitu Reaktor Air Didih Termodifikasi (Modified BWR) dan Reaktor Air Didih Maju
(Advanced Boiling Water Reactor, ABWR). Reaktor air didih pertama yang beroperasi
secara komersial di Amerika adalah reaktor Dresden 1 (dioperasikan pada Juli 1967),
reaktor air didih tipe ini disebut sebagai BWR-I. BWR-I mempunyai sistem pendinginan
dua siklus, mirip seperti reaktor air tekan (Pressurized Water Reactor, PWR). Sistem
bejana reaktor menganut konsep bentuk kering (dry sump). Pada BWR-II, teras reaktor
diperkecil dan rapat daya direndahkan. Drum uap dimasukkan ke dalam bejana reaktor
sehingga terbentuk satu siklus yang lebih sederhana. Selain itu sistem pendinginan
darurat (ECCS) dibuat berlapis, dan ruang dalam bejana reaktor dijadikan sebagai kolam supressi.

www.batan.go.id Read More..
KERJA LAB PEMROGRAMAN VISUAL I 1
Daftar Isi
MODUL I PENDAHULUAN................................................................................2
MODUL II VISUAL COMPONENT LIBRARY.......................................................13
MODUL III VISUAL COMPONENT LIBRARY II...................................................19
MODUL IV VISUAL COMPONENT LIBRARY III..................................................26
MODUL V FILE...............................................................................................36
MODUL VI DATABASE INTERBASE DAN KOMPONEN TABEL..........................48
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 2
MODUL I
PENDAHULUAN
Tujuan:
- Mengenal bahasa pemrograman Delphi
- Mengenal lingkungan Delphi
- Membuat program sederhana dengan menggunakan Delphi
Dasar Teori
Mengenal Delphi
Berikut merupakan beberapa hal yang perlu anda ketahui tentang Delphi:
 Merupakan suatu tool untuk mengembangkan aplikasi untuk Microsoft
Windows.
 Delphi merupakan sebuah tool yang ampuh dan mudah digunakan untuk
membangun aplikasi berbasis GUI (Graphical User Interface) maupun
aplikasi berbasi console 32-bit.
 Selain Delphi, Borland juga mengeluarkan Borland Kylix, dimana dengan
Borland Kylix, seorang programmer dapat membuat aplikasi untuk Windows
dan Linux dari satu kode program yang sama.
 Bahasa pemrograman di Delphi merupakan bahasa Object-Pascal1. Hal ini
berarti, alur program di Delphi, mirip dengan bahasa pemrograma Pascal.
Hal ini tentunya akan memudahkan bagi programmer, yang tudak ada
pengetahuan tentang pemrograman Pascal, untuk mempelajari Delphi.
1 Object Pascal merupakan bahasa pemrograman berorientasi object seperti halnya
C++. Akan tetapi dalam beberapa hal, Object-Pascal lebih baik daripada C++.
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 3
Pemrograman Berorientasi Objek (PBO)
PBO atau Pemrograman Berorientasi Objek merupakan adalah perluasan dari
pemrograman terstruktur yang mengutamakan pemakaian ualang program dan
enkapsulasi data berdasarkan fungsinya. Enkapsulasi merupakan kombinasi data
dan fungsionalitas ke dalam sebuah unit tunggal.
Ciri – cirri lain dari PBO adalah inheritance dan polymorphism. Inheritance artinya
suatu objek membawa fungsionalitas dari objek lain (ancestor), objek tersebut
dapat mengubah sifat dari ancestor. Polymorphism berarti objek – objek yang
berbeda, yang diturunkan dari ancestor yang sama.
Integrated Development Environment (IDE)
IDE adalah sebuah lingkungan di mana semua tools yang diperlukan untuk proses
desain, running, dan testing sebuah aplikasi disajikan dan terhubung dengan baik
sehingga memudahkan pengembangan program. Secara default, IDE Borland
Delphi 2005 terdiri dari Main Menu, Tool Bar, Structure, Object Inspector, Project
Manager, Tool Palette. Perhatikan gambar di bawah ini:
IDE Delphi
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 4
IDE Delphi, Form Designer
IDE Delphi, Code Editor
Keterangan:
Main Menu 
Tool Bar 
Form Designer  Digunakan untuk menentukan tampilan aplikasi. Adapun cara
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 5
penggunaannya adalah dengan memilih sebuah komponen dari
Component Palette, kemudian meletakkannya ke dalam Form
Designer
Code Editor  Digunakan untuk menuliskan program Delphi
Object
Inspector
 Object Inspector terdiri dari 2 tab, yaitu:
- Tab Properties : Digunakan untuk melihat dan merubah
property dari setiap komponen
- Tab Event : Digunakan melihat dan menambahkan event atau
kejadian yang akan direspon oleh sebuah komponen
Structure 
Membangun Sebuah Aplikasi Dengan Borland Delphi 2005
Sebelum membangun aplikasi dengan Delphi, anda harus memahami bahwa di
dalam Delphi, suatu aplikasi dibangun di atas sebuah Project. Karena, Delphi
hanya akan mengenali form dan unit yang terdaftar di dalam sebuah Project. Jika
tidak terdaftar dalam sebuah Project, atau tidak ada Project, dengan kata lain
hanya form dan unit saja, maka aplikasi tidak akan pernah bisa di-running dengan
menggunakan Delphi.
Berdasarkan hal tersebut di atas, maka dapat disimpulkan bahwa untuk bisa
membangun aplikasi, running, dan testing dengan menggunakan Delphi, ada
beberapa file yang harus ada:
1. File Borland Developer Studio Project (.bdsproj)
File ini digunakan untuk menyimpan informasi project yang dibuat dengan
menggunakan Borland Delphi 2005
2. File Project (.dpr)
File ini akan digunakan untuk menyimpan informasi mengenai form dan unit, serta
untuk menjalankan aplikasi.
3. File Unit (.pas)
File ini digunakan untuk menyimpan program. File unit ada 3 macam, yaitu:
a. Unit Form, Data Module, dan Frame. Unit ini dibuat secara
otomatis oleh Delphi pada saat anda menambahkan Form, Data
Modul, atau Frame.
b. Unit Component. Unit ini dibuat pada saat membuat komponen
baru.
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 6
c. Unit Umum. Unit ini dibuat untuk tipe data, variable, procedure, dan
class yang dapat diakses oleh aplikasi.
Dalam sebuah file unit, ada beberapa bagian yang perlu anda
ketahui:
Sebuah file unit dimulai dengan kata unit, kemudian diikuti dengan
bagian interface, implementation, initialization, dan finalization. Dua
bagian yang terakhir, initialization dan finalization, merupakan bagian
optional, artinya boleh ada, boleh tidak.
o Keyword Unit
Kata unit adalah kata yang mengawali sebuah unit, biasanya terletak
di baris pertama. Kata unit yang biasanya diikuti dengan nama unit.
Perlu anda perhatikan, bahwa nama unit haruslah sama dengan nama
file unit yang tersimpan di komputer anda. Anda bisa merubah nama
unit tersebut dengan cara anda menyimpan unit itu ke dalam file lain
melalui meni File -> Save As… Dengan demikian, Nama unit akan
secara otomatis sama dengan nama file unit.
Hal lain yang perlu anda perhatikan adalah di dalam satu project,
nama unit haruslah unik, tidak boleh terjadi duplikasi.
o Bagian Interface
Bagian interface adalah bagian dimana akan didefinisikan semua hal
yang akan dimunculkan di dalam sebuah unit. Bagian ini memiliki
beberapa sub bagian yang diantaranya adalah:
 Uses
Bagian uses digunakan untuk mendefinisikan semua unit yang
akan digunakan di dalam unit.
 Type
Bagian type digunakan untuk mendefinisikan tipe data baru,
termasuk class.
 Var
Bagian var digunakan untuk membuat object yang telah
didefinisikan di dalam sub bagian Type. Selain itu, bagian ini
juga digunakan untuk mendeklarasikan semua variable yang
akan digunakan di dalam unit.
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 7
 Const
Bagian const digunakan untuk mendefinisikan konstanta yang
akan digunaka di dalam unit. Konstanta merupakan variable
yang memiliki nilai tetap.
o Bagian Implementation
Bagian implementation merupakan bagian dimana anda
mendefinisikan kode program untuk sebuah aksi atau event.
Sebuah unit selalu diakhirir dengan tanda end.
4. File Form (.dfm)
File ini menyimpan informasi menenai form dan komponen – komponen
yang ditambahkan ke dalam form.
Selain ketiga file di atas, ada file resource (.res), file project option (.dof), file
desktop settings (.dsk), dan file backup.
Pada saat suatu Project di-running dengan dengan menggunakan Delphi, maka
secara otomatis Delphi akan membuat file – file compiler, diantaranya adalah file
executable (.exe) dan file unit object (.dcu).
Selanjutnya, kita akan membuat sebuah aplikasi sederhana seperti gambar di
bawah ini:
Adapun langkah – langkahnya adalah sebagai berikut:
1. Buka program Delphi (Start Menu -> All Programs -> Borland Delphi 2005 ->
Delphi 2005)
2. Buat project baru, dengan cara (File > New > VCL Forms Application – Delphi
For Win32)
3. Klik Form Designer, kemudian ubah property Caption dari Form1 menjadi
Coba
4. Tambahkan komponen TLabel (dari Component Palette, Tab Standard),
kemudian ubah property Caption menjadi Isi Pesan
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 8
5. Tambahkan komponen TEdit, kemudian kosongkan property Text
6. Tambahkan komponen TButton, kemudian ubah property Name menjadi
Tombol1. Selanjutnya ubah property Caption menjadi Satu.
7. Tambahkan komponen TButton, kemudian ubah property Name menjadi
Tombol2. Selanjutnya ubah property Caption menjadi Dua.
8. Aturlah komponen – komponen tersebut sedemkian rupa sehingga tampak
seperti contoh.
9. Dari aplikasi ini, bila tombol Satu ditekan, maka komponen Edit akan terisi
“Saya Ingin Belajar Delphi”. Apabila tombol Dua ditekan, maka komponen
Edit akan terisi “Delphi Keren”.
10. Agar aplikasi bisa melakukan apa yang ada di point 8, maka pada tombol
Satu dan Dua perlu ditabahkan sebuah event handler (penanganan event).
Ada 2 cara untuk mendefinisikan event handler, yaitu:
a. Klik ganda pada komponen, dalam hal ini tombol Satu
b. Klik komponen tombol Satu, kemudian pilih tab Event pada Object
Inspector. Pilih Event OnClick, klik ganda pada kolom isiannya.
11. Kemudian tuliskan kode program berikut:
Edit1.Text := ‘Saya Mau Belajar Delphi’;
12. Dengan cara yang sama, tambahkan event handler untuk tombol Dua,
kemudian tuliskan kode program berikut ini:
Edit1.Text := ‘Saya Mau Belajar Delphi’;
13. Untuk bisa menjalankan program, klik Menu Run -> Run Atau dengan
menekan tombol F9 pada keyboard.
Menampilkan Message Box
Coba anda tambahkan baris kode program berikut pada event handler untuk
Tombol Satu dan Dua.
ShowMessage(‘Halo Dunia !!!’);
Perhatikan apa yang terjadi!
Catatan:
Untuk menyimpan sebuah project anda, tinggal klik Menu File -> Save All. Pada
saat penyimpanan, jika project baru dibuat, maka Delphi akan menyimpan file unitnya
terlebih dahulu, kemudian diikuti dengan menyimpan file project. Pastikan file
project dan file unit tersimpan di dalam satu folder yang sama.
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 9
Bekerja Dengan 2 Form
Menambahkan Form Baru
– File > New > Form - Delphi For Win32
– Ubah property caption-nya menjadi Form2
Mengubah Main Form
- Jika ingin menjalankan aplikasi dengan Form2 muncul terlebih dahulu, yang perlu
anda lakukan adalah pilih menu: Project > Options
– Pada menu tersebut, secara default, Form1 akan berlaku sebagai main form.
Main form merupakan form yang akan pertama kali dijalankan oleh Delphi
– Anda bisa merubah form mana yang akan dijadikan sebagai main form dengan
cara mengganti main form dengan form lain yang ada di dalam combo
– Selain itu, di dalam window tersebut ada 2 list form, yaitu Auto-create forms dan
Available forms
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 10
– Auto-create forms: menampilkan daftar form yang akan secara otomatis
dibuatkan oleh program pada saat program dijalankan
– Available forms: menampilkan daftar form yang tidak akan dibuatkan oleh
program secara otomatis, tapi form - form yang ada pada list ini dapat
secara runtime dibuat (create) dan dihancurkan (destroy) --> biasanya
digunakan untuk mengefektifkan penggunaan memori
Memanggil Form1 dari Form2
Agar kita bisa memanggil Form1 dari Form2 dan sebaliknya, hal yang perlu
dilakukan adalah:
– Tambahkan satu buah Button pada Form2
– Ubah property Caption menjadi Lihat Form 1.
– Kemudian, anda harus menambahkan unit form1 ke dalam deklarasi uses pada
form2, caranya dengan tekan tombol Alt + F11, yang akan memunculkan
jendela seperti ini:
– Pilihlah unit yang ingin anda tambahkan, misal unit1.
– Kemudian klik OK.
– Kemudian, pada Form2, tambahkan event handler OnClick untuk Button1
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 11
– Masukkan kode program berikut:
Form1.Show;
– Sekarang jalankan aplikasi dan coba anda klik tombol dengan caption Lihat
Form 1, perhatikan apa yang terjadi.
TUGAS
Buatlah sebuah aplikasi seperti di bawah ini
Keterangan:
Bila tombol Indonesia diklik, akan tampil: Liga Djarum
Bila tombol Jerman diklik, akan tampil: Bundesliga
Bila tombol Spanyol diklik, akan tampil: La Liga
Bila tombol Italia diklik, akan tampil: Serie A
Bila tombol Inggris diklik, akan tampil: Premier League
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 12
MODUL II
VISUAL COMPONENT LIBRARY
Tujuan
- Mengenal komponen pada Delphi
- Mengenal Komponen pada Kategori Standard
- Membuat aplikasi dengan menggunakan komponen TEdit, TButton, TLabel,
TRadioButton, TRadioGroup, dan TGroupBox.
Dasar Teori
Visual Component Library (VCL) merupakan hierarki dari class (object) yang ditulis
dengan Object Pascal dan tergabung dalam IDE Delphi. Dengan demikian, kita
dapat dengan mudah menambahkan komponen pada form dan memanipulasi
property-nya tanpa harus menuliskan program.
Di dalam Delphi, ada dua macam komponen, yaitu komponen yang bersifat Visual
dan Non-Visual. Komponen visual digunakan untuk mebuat desain user interface
(antar muka dengan pemakai) sehingga kita bisa merubah ukuranya sesuai
kebutuhan. Contoh: Label, Edit, Button, RadioButton, RadioGroup, dan GroupBox.
Sedangkan komponen non-visual, hanya bisa diubah propertynya, tanpa bisa
merubah ukurannya. Hal ini dikarenakan pada saat program dijalankan, komponen
non-visual tidak tampak. Contoh: ActionList.
Pada Tab Standard, terdapat kurang lebih 16 komponen. Komponen – komponen ini
merupakan komponen yang sering digunakan. Pada praktikum kali ini, kita akan
mencoba 6 buah komponen, yaitu TLabel, TButton, TEdit, TRadioButton,
TRadioGroup, dan TGroupBox.
Nama Komponen Keterangan
TLabel Untuk menempatkan teks di dalam form
TEdit Untuk menerima satu baris teks yang merupakan masukan dari luar
TButton Untuk membuat tombol yang akan dipakai untuk memilih option di
dalam aplikasi
TRadioButton Untuk memberikan sekumpulan pilihan dan hanya satu yang dapat
dipilih
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 13
TGroupBox Untuk mengelompokkan komponen – komponen yang berhubungan
TRadioGroup Untuk membuat sekelompok RadioButton
Catatan:
Semua masukan yang diterima oleh komponen Edit, merupakan string. Artinya, jika
anda ingin membuat sebuah aplikasi untuk menjumlahkan bilangan yang
dimasukkan oleh user, maka anda harus merubah nilai yang diterima di dalam
kompenen Edit menjadi tipe data yang bisa dikenakan operasi penjumlahan,
misalnya integer. Untuk itu, anda perlu menggunakan fungsi StrtoInt(AString),
AString adalah variable bertipe string, yang akan mengubah string ke integer.
Sebaliknya, jika anda ingin merubah dari integer ke string, maka anda bisa
menggunakan fungsi IntToStr(AInteger), AInteger adalah sebuah variable bertipe
integer.
Latihan I
Buatlah sebuah program untuk menjumlahkan dua buah angka yang dimasukkan
oleh user. Adapun tampilannya adalah sebagai berikut:
Langkahnya:
1. Buatlah tampilan seperti gambar di atas dengan menggunakan komponen –
komponen pada tabel berikut:
Komponen Property
Name Caption Text
TLabel lbl1 Bilangan Pertaman
lbl2 Bilangan Kedua
lbl3 Hasil
TEdit EBilangan1
EBIlangan2
EHasil
TButton BJumlah Jumlah
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 14
2. Masukkan kode program berikut untuk penanganan event pada tombol
Jumlah
procedure TForm1.BJumlahClick(Sender: TObject);
var bil1, bil2: Integer;
begin
bil1 := StrToInt(EBilangan1.Text);
bil2 := StrToInt(EBilangan2.Text);
EHasil.Text := IntToStr(bil1 + bil2);
end;
Latihan II
Buatlah aplikasi untuk menghitung Pembayaran seperti di bawah ini:
Langkahnya:
1. Buatlah tampilan seperti di atas dengan menggunakan komponen -
komponen pada tabel di bawah ini:
Komponen Property
Name Caption Text
TLabel Label1 Nama
Label2 Banyak
Label3 Harga Per Kg
Label4 BAYAR
TButton THitung Hitung
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 15
TRadioGroup RadioGroup1 Jenis Buah
TEdit ENama
EBanyak
EHarga
EBayar
2. PIlih komponen RadioGroup. Kemudian untuk property items, isikan:
3. Selanjutnya ubah property column menjadi 4 agar sesuai dengan tampilan
yang diinginkan.
4. Pada komponen EHarga, property Enabled diisi False.
5. Masukkan kode program berikut untuk penanganan event pada tombol
HITUNG
procedure TForm1.THitungClick(Sender: TObject);
var banyak, harga, bayar: Real;
begin
banyak := StrToFloat(EBanyak.Text);
if RadioGroup1.ItemIndex = 0 then
begin
harga := 9000;
EHarga.Enabled := True;
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 16
EHarga.Text := FloatToStr(harga);
end
else if RadioGroup1.ItemIndex = 1 then
begin
harga := 8500;
EHarga.Enabled := True;
EHarga.Text := FloatToStr(harga);
end
else if RadioGroup1.ItemIndex = 2 then
begin
harga := 6500;
EHarga.Enabled := True;
EHarga.Text := FloatToStr(harga);
end
else if RadioGroup1.ItemIndex = 3 then
begin
harga := 9500;
EHarga.Enabled := True;
EHarga.Text := FloatToStr(harga);
end;
bayar := banyak * harga;
EBayar.Text := FloatToStr(bayar);
end;
TUGAS
Buatlah sebuah program Kalkulator sederhana seperti di bawah ini
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 17
Keterangan:
Jika RadioButton Perkalian dipilih, maka program akan menampilkan hasil perkalian
antara bilangan pertama dan bilangan kedua
Jika RadioButton Pembagian dipilih, maka program akan menampilkan hasil
pembagian antara bilangan pertama dan bilangan kedua
Jika RadioButton Penjumlahan dipilih, maka program akan menampilkan hasil
penjumlahan antara bilangan pertama dan bilangan kedua
Jika RadioButton Pengurangan dipilih, maka program akan menampilkan hasil
pengurangan antara bilangan pertama dan bilangan kedua
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 18
MODUL III
VISUAL COMPONENT LIBRARY II
Tujuan
- Mengenal komponen TCheckBox, TMemo, TListBox, TComboBox, TPanel,
TMainMenu, dan TPopUpMenu
- Membuat aplikasi menggunakan TCheckBox, TMemo, TListBox, TComboBox,
dan TPanel
- Membuat aplikasi memakai TMainMenu dan TPopUpMenu
Dasar Teori
Setelah pada praktikum sebelumnya kita belajar untuk menggunakan komponen
Label, Edit, Button, RadioBox, GroupBox, dan RadioGroup, selanjutnya kita akan
belajar menggunakan komponen lain di dalam Tab Standard Component Palette.
Adapun komponen – komponen itu adalah ChechBox, Memo, ListBox, ComboBox,
Panel, dan Menu.
Nama Komponen Keterangan
Menu Komponen menu akan memberikan cara yang mudah untuk
menjalankan kelompon perintah. Untuk menambahkan menu ke
dalam sebuah form, digunakan Menu Designer. Di dalam Delphi, ada
2 macam komponen Menu, yaitu TMainMenu dan TPopUpMenu.
Komponen TMainMenu akan membut menu yang menempel pada
titile bar dari form. Sedangkan komponen TPopUpMenu akan
membuat menu pada saat user mengklik kanan pada form atau pada
sebuah komponen.
TMemo Komponen TMemo digunakan untuk memasukkan string lebih dari
satu baris.
TCheckBox Komponen TCheckBox digunakan untuk memberikan 3 pilihan, yaitu
checked, unchecked, dan grayed. Untuk pilihan yang terakhir, anda
bisa mengaktifkannya dengan cara merubahlah property
AllowGrayed dari komponen TCheckBox menjadi True, jika anda
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 19
tidak ingin mengaktifkannya, maka ubahlah property AllowGrayed
tersebut menjadi False.
TListBox Komponen TListBox digunakan untuk menampilkan daftar item dan
anda bisa memilih item – item tersebut. Berikut beberapa property
dari komponen TListBox yang perlu anda ketahui:
– Property Items: digunakan untuk mengisi daftar item yang bisa
dipilih
– Property ItemIndex: menyatakan indeks dari iten yang terpilih,
secara default dimulai dengan angka 0.
– Property MultiSelect: menyatakan apakah anda dapat memilih
lebih dari satu pilihan pada saat yang bersamaan atau tidak.
– Property Sorted: menyatakan apakah daftar pilihan akan terurut
secara alfabetis atau tidak.
TComboBox Komponen TComboBox merupakan kombinasi antara komponen Edit
dengan komponen TListBox.
TPanel Komponen TPanel merupakan suatu kontainer, untuk
mengelompokkan komponen, seperti halnya TGroupBox.
Latihan I
Buatlah sebuah aplikasi dengan tampilan seperti di bawah ini:
Keterangan:
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 20
– ComboBox akan menyediakan pilihan teks untuk dituliskan ke Memo
– ListBox akan menyediakan pilihan warna untuk Memo
– GroupBox Font, menyediakan pilihan untuk style teks yang akan ditampilkan di
Form.
Langkah – langkahnya:
1. Tambahkan komponen Panel.
2. Kosongkan property Captionnya ubah property Name menjadi Panel1.
3. Tambahkan komponen ComboBox, ListBox, dan GroupBox pada Panel1.
4. Ubah property Name dari ComboBox menjadi cbbCombo.
5. Pada property Items dari cbbCombo, isikan teks – teks berikut:
FMIPA
FIB
FKU
6. Kosongkan property Texk dari cbbCombo.
7. Ubah property Name dari komponen ListBox menjadi lstListWarna
8. Pada property Items dari lstListWarna, isikan teks – teks berikut:
Kotak Pesan Warna Biru
Kotak Pesan Warna Merah
Kotak Pesan Warna Kuning
9. Tambahkan komponen CheckBox pada GroupBox, kemudian ubah
property Name menjadi chkBiru dan Caption menjadi Teks Warna Biru
10. Ulangi lagkah 9, namun ubah property Name menjadi chkMiring dan
Caption menjadi Teks Miring.
11. Ulangi langkah 9, namun ubah property Name menjadi chkTebal dan
Caption menjadi Teks Tebal.
12. Tambahkan komponen Panel, kemudian ubah property Name menjadi
Panel2, kosongkan property Caption-nya, dan isikan 10 pada property
BorderWidth.
13. Tambahkan komponen Memo ke dalam Panel2, kemudian ubah Property
Name menjadi mmo1 dan Align menjadi allClient.
14. Tambahkan kompone Panel, kemudian ubah property Name menjadi
Panel3 dan kosongkan property Caption-nya.
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 21
15. Tambahkan 3 buah komponen Button pada Panel3, yang masing – masing
diberi nama btnIsiPesan, btnUbahFont, dan btnKeluar. Adapun Caption
untuk masing – masing button adalah Isi Pesan, Ubah Font, dan Keluar.
BtnIsiPesan akan digunakan untuk mengisi 2 baris teks ke dalam mmo1,
dimana baris pertama berasal dari cbbCombo, sedangkan baris kedua
menyatakan indeks teks baris pertama di dalam cbbCombo. Selain itu,
button ini juga akan mengubah warna dari mmo1 sesuai dengan warna
yang dipilih pada lstListWarna.
BtnUbahFont digunakan untuk mengubah fornt di dalam Form1
berdasarkan pilihan CheckBox di GroupBox.
BtnKeluar digunakan untuk mengakhiri program.
16. Tambahkan event handler untuk masing – masing button sesuai dengan
penjelasan di point 15.
Untuk btnIsiPesan
procedure TForm1.btnIsiPesanClick(Sender: TObject);
begin
mmo1.Clear;
mmo1.Lines.Add(cbbCombo.Text);
mmo1.Lines.Add('String dari combobox no. ' +
IntToStr(cbbCombo.ItemIndex));
case lstListWarna.ItemIndex of
0: mmo1.Color := clRed;
1: mmo1.Color := clAqua;
2: mmo1.Color := clYellow;
end;
end;
17. Untuk btnUbahFont
procedure TForm1.btnUbahFontClick(Sender: TObject);
begin
if chkBiru.Checked then
Form1.Font.Color := clBlue
else
Form1.Font.Color := clWindowText;
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 22
Form1.Font.Style := [];
if chkMiring.Checked then
Form1.Font.Style := [fsItalic];
if chkTebal.Checked then
Form1.Font.Style := [fsBold];
end;
18. Untuk btnKeluar
procedure TForm1.btnKeluarClick(Sender: TObject);
begin
Application.Terminate;
end;
Latihan II
Buatlah sebuah program dengan mengikuti langkah – langkah berikut:
1. Buat sebuah aplikasi baru, ubah property Caption Form menjadi MENU
2. Tambahkan komponen MainMenu, PopUpMenu, dan Edit. MainMenu dan
PopUpMenu merupakan komponen non-Visual, sehingga bisa anda
letakkan di mana saja.
3. Klik ganda pada komponen MainMenu tersebut untuk membuka Menu
Designer. Menu Designer digunakan untuk menambahkan item – item
yang ingin anda tampilkan dalam menu. Cara lain untuk memunculkan
adalah melalui property Items pada komponen MainMenu.
4. Selanjutnya isikan item pertama Menu Designer dengan &Data. Tanda &
digunakan agar menu tersebut bisa dipilih dengan menekan Ctrl+D (huruf
dibelakang tanda &). Kemudian, lengkapi item dalam menu tersebut dengan:
&Nama Anda
&Alamat Anda
&Prodi Anda
Sedemikian sehingga tampilan menu-nya seperti pada gambar di bawah ini:
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 23
5. Klik ganda item Nama Anda, sehingga jendela Code Editor muncul,
kemudian masukkan kode program berikut:
Edit1.Text := 'Bambang Pamungkas';
6. Lakukan hal yang sama untuk item Alamat Anda dan Prodi Anda, adapun
untuk item Alamat Anda, ketikkan kode program berikut:
Edit1.Text := 'Jakarta';
Sedangkan untuk item Prodi Anda, ketikkan kode program berikut:
Edit1.Text := 'D3 Komputer dan Sistem Informasi';
7. Dengan cara yang sama, lakukan pada komponen PopUpMenu. Isikan pada
menu Designer item – item berikut:
Teks Warna Biru
Teks Warna Hijau
8. Pada setiap item, secara berturut – turut masukkan kode program berikut:
Edit1.Font.Color := clBlue;
Edit1.Font.Color := clGreen;
9. Pada latihan kali ini, kita akan mencoba menambahkan menu klik kanan
pada Form, sehingga pada property PopupMenu form anda, isikan nama
komponen PopUpMenu yang telah anda tambahkan sebelumnya. Untuk
mudahnya, anda tinggal klik pada combo yang ada untuk memperoleh
nama komponen PupUpMenu yang sudah anda tambahkan.
10. Setelah selesai, coba anda jalankan. Kemudian amatilah apa yang terjadi.
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 24
Latihan III
Kadang kala kita menjumpai menu yang memiliki daftar drop-down di samping
sebuah item menu. Daftar menu yang muncul di samping sebuah item menu kita
sebut sebagai SubMenu. Untuk menambahkan sebuah SubMenu, langkah yang
perlu anda lakukan adalah:
1. Buka kembali aplikasi menu yang pernah anda buat
2. Klik ganda pada Komponen MainMenu, untuk menampilkan Menu
Designer.
3. Pada item Nama Anda, klik kanan, kemudian pilih Create Submenu. Isikan
item pertama dengan Nama Depan, selanjutnya item kedua, isikan dengan
Nama Belakang. Sebelumnya, hapus kode program pada item Nama
Anda. Adapun tampilannya akan menjadi seperti gambar di bawah ini:
4. Selanjutnya, isikan kode program berikut ini untuk item Nama Depan dan
Nama Belakang
Edit1.Text := 'Bambang';
Edit2.Text := 'Pamungkas';
Catatan:
Pada komponen PopUpMenu, anda juga bisa menambahkan SubMenu dengan cara
yang sama seperti anda menambahkan SubMenu pada komponen MainMenu.
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 25
MODUL IV
VISUAL COMPONENT LIBRARY III
Tujuan
- Mengenal TMaskEdit, TBitBtn, TImage, dan TShape pada kategori Additional
- Mengenal komponen TDateTimePicker dan TMonthCalendar pada kategori
Win32
- Mengenal komponen TTimer pada kategori System
- Membuat aplikasi dengan meggunakan komponen TMaskEdit, TBitBtn,
TImage, TShape, TDateTimePicker, TMonthCalendar, dan TTimer.
Dasar Teori
Setelah mempelajari beberapa komponen di tab Standard, kita akan
mencoba mengenal beberapa komponen di kategori Additional. Pada tab Additional
ini, komponen yang akan kita pelajari adalah komponen TMaskEdit, TBitBtn,
Timage, dan TShape.
TMaskEdit
Komponen TMaskEdit digunakan untuk menformat data masukan. Agar
mudah dimengerti, sekarang coba anda buat aplikasi baru. Kemudian tambahkan
komponen Label dan EditMask. Aturlah komponen – komponen yang anda
tambahkan sedemekian sehingga seperti pada gambar di bawah ini:
Sekarang kita akan coba memberikan format pada komponen MaskEdit yang telah
anda tambahkan ke dalam Form1. Langkahnya adalah:
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 26
1. Pilihlah komponen MaskEdit yang sudah anda tambahkan ke dalam form,
misal komponen MaskEdit1.
2. Klik property EditMask, selanjutnya akan muncul jendela Input Mask Editor
Keterangan:
Input Mask: Field ini digunakan untuk mendefinisikan mask pada kotak edit. Mask
terdiri dari tiga bagian yang dipisahkan oleh karakter titik koma (;). Ketiga field itu
adalah:
• Field pertama adalah mask. Mask dapat anda buat sendiri atau menggunakan
mask yang sudah ada (Sample Mask).
• Field kedua adalah karakter yang menyatakan apakah karakter literal pada
mask akan disimpan di dalam data atau tidak.
• Field ketiga adalah karakter untuk menyatakan spasi di dalam mask.
Save Literal Characters: Jika diaktifkan, maka karakter literal akan tersimpan di
dalam data.
Character For Blanks: Menyatakan karakter yang dipakai sebagai blank (karakter
kosong) di dalam mask. Blank digunakan user untuk mengisikan data.
Test Input: Digunakan untuk mngetes mas yang telah dibuat.
Sample Mask: Digunakan untuk menampilkan mask sudah ada.
Masks: Untuk menampilkan kotak dialog Open Mask File dan dapat memilih contoh
– contoh mask yang sudah ada.
Berikut adalah daftar karakter – karakter yang dapat dipakai pada field pertama
dari mask:
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 27
Karakter Keterangan
! Jika ada karakter !, karakter – karakter optional pada kotak
edit akan dinyatakan sebagai leading blank. Jika tidak ada,
maka dinyatakan sebagai trailing blank.
> Karakter ini menyatakan semua karakter yang mengikutinya
adalah huruf besar sampai akhir mask atau sampai
ditemukan karakter <
< Karakter ini menyatakan semua karakter yang mengikutinya
adalah huruf kecil sampai akhir mask atau sampai ditemukan
karakter >
<> Jika kedua karakter ini ditemukan bersama – sama pada
sebuah mask, maka tidak ada permeriksaan huruf kecil dan
kapital serta data diformat sesuai dengan input yang
diberikan oleh user.
\ Karakter – karakter sesudah karakter \ merupakan karakter
literal. Karakter ini dipakai untuk karakter – karakter yang
berlaku sebagai literal pada data.
L Karakter ini menyatakan bahwa pada posisi tersebut, hanya
menerima karakter (A – Z atau a – z).
l Karakter ini menyatakan bahwa pada posisi tersebut, hanya
menerima karakter tetapi tidak harus ada.
A Karakter ini menyatakan bahwa pada posisi tersebut,
menerima karakter alphanumerik (A – Z, a – z, 0 – 9).
a Karakter ini menyatakan bahwa pada posisi tersebut,
menerima karakter alphanumerik tetapi tidah harus ada.
C Karakter ini menyatakan bahwa pada posisi tersebut,
menerima karakter apa saja.
0 Karakter ini menyatakan bahwa pada posisi tersebut, hanya
menerima karakter numerik (0 – 9).
9 Karakter ini menyatakan bahwa pada posisi tersebut, hanya
menerima karakter numerik tetapi tidak harus ada.
# Karakter ini menyatakan bahwa pada posisi tersebut,
menerima karakter numerik atau tanda plus (+) atau tanda
minus (-), tetapi boleh kosong.
: Karakter ini digunakan untuk memisahkan jam, menit, dan
detik
/ Karakter ini digunakan untuk memisahkan tanggal, bulan, dan
tahun pada data tanggal
_ Karater _ digunakan untuk menyisipkan spasi ke dalam teks.
Jika user memasukkan karakter ke dalam field, maka kursor
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 28
akan melewati karakter _
3. Dari contoh aplikasi yang dibuat:
MaskEdit1 akan menerima data nama. Data nama terdiri dari karakter
alphabetis (tidak ada angka) dan panjangnya bervariasi (misal: maksimal 20
karakter). Oleh karena itu, mask yang cocok adalah:
llllllllllllllllllll;1;_
MaskEdit2 akan digunakan untuk mengisi data nomor telepon. Data telepon
biasanya didahului oleh kode area yang merupakan deretan 3 atau 4 angka.
Panjang maksimum nomor telepon, misalnya adalah 7. Oleh karena itu,
mask edit yang cocok adalah:
!\(9999\) 999 9999;1;_
Latihan 1
Dari aplikasi yang sudah anda buat, coba anda tambahkan komponen TMaskEdit
untuk menerima masukan kode pos yang terdiri dari 6 digit. Tambahkan pula
komponen MaskEdit untuk menerima masukan data tanggal yang berformat
dd/mm/yyyy.
TBitBtn
Komponen TBitBtn adalah komponen button yang mempunya gambar kecil
pada tampilannya. Perlakuan pada komponen TBitBtn sama dengan kompenen
Button. Hanya saja, di komponen ini ada property Kind untuk menentukan tipenya,
dan property Glyph untuk menentukan gambar apa yang bisa anda tampilkan di
komponen TBitBn tersebut.
Coba anda tambahkan sebuah komponen TBitBtn ke dalam aplikasi yang
tadi sudah anda buat. Kemudian ubah property Kind menjadi bkClose. Perhatikan
apa yang terjadi. Selanjutnya masukkan sebuah event handler ke dalam komponen
BitBtn tersebut agar pada saat user mengkliknya, maka aplikasi akan ditutub.
Catatan:
Gambar yang bisa diteima di komponen TBitBtn adalah gambar bertipe *.bmp
(bitmap).
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 29
TImage
Sesuai dengan namanya, komponen TImage digunakan untuk menampilkan
gambar. Adapun property dari komponen ini yang bisa anda ubah nilainya adalah
– Picture : Property ini digunakan untuk menampilkan picture editor
Untuk memilih sebuah gambar, anda bisa mengklik tombol Load. Kemudian, klik
tombol OK jika anda yakin bahwa gabar tersebut adalah gambar yang ingin
tampilkan.
– Strech: Property ini mempunyai dua buah nilai. Jika True, maka gambar akan
menyesuaikan ukuran komponen TImage. Sebaliknya, jika False, maka gambar
akan ditampilkan sesuai dengan ukuran sebenarnya.
Catatan:
Secara default, komponen TImage hanya bisa menampilkan gambar bertipe BitMap
(*.bmp) dan JPEG (*.jpg).
TShape
Komponen TShape digunakan untuk menampilkan bentuk geomertis ke
dalam sebuah form. Adapun property dari komponen ini yang bisa anda ubah
nilainya adalah:
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 30
– Shape : Property ini digunakan untuk merubah bentuk dari objek geometris
yang ditampilkan di form. Ada 6 bentuk geometris yang disediakan oleh
komponen Shape, yaitu: Circle, Ellipse, Rectangle, Round Rectangle, Square,
dan Round Square.
Pertanyaanya adalah bagaimana untuk memasukkan object geometris berupa
segitiga?
Tugas
Buatlah sebuah form untuk memasukkan data mahasiswa yang terdiri dari NIM,
Nama, Tempat Lahir, Tanggal Lahir, Alamat, Kode Pos, dan Nomor Telepon.
Desainlah sedemiakn rupa sehingga menarik perhatian user.
Petunjuk: Gunakan komponen TMaskEdit.
Setelah anda mengenal beberapa komponen di kategori Additional, sekarang
kita akan mencoba untuk mengenali beberapa komponen yang ada di kategori
Win32, yaitu komponen TDateTimePicker dan TMonthCalendar.
TDateTimePicker
Komponen TDateTimePicker digunakan untuk menampilkan sebuah listbox
untuk memasukkan jam atau tanggal. Beberapa property dari komponen ini yang
bisa anda ubah nilainya adalah:
– Kind: Property ini digunakan untuk menentukan apa yang akan ditampilkan oleh
komponen ini, Ada dua pilihan, yaitu dtkDate dan dtkTime. Jika anda memilih
dtkDate, maka komponen ini akan menampilkan tanggal, sebaliknya jika anda
memilih dtkTime, maka komponen ini akan menampilkan waktu.
– DateFormat: Property ini digunakan untuk menentukan format tanggal yang
akan ditampilkan, ada dua pilihan, yaitu dtShort dan dtLong.
– Format: Dengan menggunakan property ini, anda bisa memasukkan tanggal dan
waktu sekaligus. Tentunya dengan memasukkan beberapa elemen di bawah ini:
Elemen Keterangan
d Elemen ini akan menampilkan tanggal, satu digit atau dua digit.
dd Elemen ini akan menampilkan tanggal dalam dua digit.
ddd Elemen ini akan menampilkan nama hari yang disingkat.
dddd Elemen ini akan menampilkan nama hari secara penuh.
h Elemen ini akan menampilkan jam satu atau dua digit dalam
format 12 jam.
hh Elemen ini akan menampilkan jam dua digit dalam format 12 jam.
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 31
H Elemen ini akan menampilkan jam satu atau dua digit dalam
format 24 jam.
HH Elemen ini akan menampilkan jam dua digit dalam format 24 jam.
m Elemen ini akan menammpilkan menit satu atau dua digit.
mm Elemen ini akan menampilkan menit dua digit.
M Elemen ini akan menampilkan nomor bulan , satu digit atau dua
digit.
MM Elemen ini akan menampilkan nomor bulan dua digit.
MMM Elemen ini akan menampilkan nama bulan yang disingkat.
MMMM Elemen ini akan menampilkan nama bulan secara penuh.
t Elemen ini akan menampilkan satu huruf AM/PM (misal jika waktu
sekarang adalah AM, maka yang ditampilkan adalah A).
tt Elemen ini akan menampikan huruf AM/PM.
yy Elemen ini akan menampilkan bilangan tahun yang disingkat,
misal 2001 akan disingkat menjadi 01.
yyyy Elemen ini akan menampilkan bilangan tahun secara penuh.
TMonthCalendar
Komponen ini digunakan untuk menampilkan tanggal dalam satu bulan.
Adapun beberapa property dari komponen ini yang bisa anda ubah nilainya adalah:
– MultiSelect: Property ini jika bernilai true, maka tanggal di komponen
MonthCalendar bisa dipilih lebih dari satu. Sebaliknya jika false, maka anda
hanya bisa memilih satu buah tanggal saja.
– WeekNumbers: Property ini digunakan untuk menampilkan nomor minggu
dalam satu tahu pada bulan terpilih.
– FirstDayOfWeek: Property ini digunakan untuk mengubah hari pertama dati
komponen MinthCalendar. Secara default, nilai property ini akan sama dengan
tanggal yang ada di system (komputer anda).
Latihan 2
Buatlah form seperti di bawah ini:
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 32
Langkahnya:
1. Tambahkan komponen TDateTimePicker.
2. Ubah property Name menjadi dtp1.
3. Tambahkan property TMonthCalendar.
4. Ubah property Name menjadi cal1.
5. Selanjutnya, tambahkan even handler onClick pada komponen
MonthCalendar.
6. Isikan kode program di bawah ini:
dtp1.Date := cal1.Date;
7. Jalankan aplikasi yang telah anda buat
Perhatikan apa yang terjadi!
Komponen terakhir yang akan kita kenal pada modul ini adalah TTimer.
Komponen ini terletak pada kategori System. Komponen TTimer digunakan sebagai
pemicu suatu event, baik itu hanya sekali maupun berulang – ulang.
Latihan 3
Pada latihan kali ini, kita akan mebuat sebuah tulisan berjalan. Langkahnya:
1. Buatlah form seperti di bawah ini
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 33
2. Tambahkan sebuah komponen TTimer.
3. Ubah property Name menjadi tmr1.
4. Tambahkan sebuah komponen Label.
5. Ubah property Caption menjadi FMIPA UGM.
6. Tambahkan event handler OnTimer pada komponen Timer, kemudian isikan
kode program berikut:
if lbl1.Left < Form1.Width then
lbl1.Left := lbl1.Left + 1
else
lbl1.Left := 0 - lbl1.Width;
7. Coba jalankan program tersebut, perhatikan apa yang terjadi!
8. Jika tulisan berjalan terlalu lambat, anda bisa mengubah nilai property
Interval pada komponen Timer menjadi nilai yang lebih kecil.
Latihan 4
Selanjutnya, masih berkaitan dengan komponen timer, kita akan mencoba
membuat sebuah jam digital. Langkah – langkahnya:
1. Buatlah sebuah form seperti di bawah ini:
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 34
2. Tambahkan komponen TTimer.
3. Ubah property Name menjadi tmr1.
4. Tambahkan kompone Label.
5. Ubah property Name menjadi lbl1.
6. Ubah Font dari lbl1 sehingga terlihat lebih jelas. Gunakan property Font pada
komponen Label. Jenis font dan ukurannya bebas, sesuai dengan keinginan
anda.
7. Tambahkan event handler OnTimer pada komponen Timer, kemudian isikan
kode program berikut:
lbl1.Caption := TimeToStr(Now);
8. Jalankan program dan perhatikan apa yang terjadi.
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 35
MODUL V
FILE
Tujuan
- Mengenal File
- Mengenal File Teks dab File Biner
- Membuat aplikasi yang menggunakan File Teks dan File Biner
Dasar Teori
File adalah kumpulan data yang tersusun rapi dan disimpan di media
penyimpanan, seperti Flash Disk, Hard Disk, CD-ROM, Disket, dan lain – lain. File
dapat digunakan untuk menyimpan informasi setup, menyimpan data sementara,
dan mengirimkan data antar program. Adapu Delphi, telah menyediakan fasilitas –
fasilitas untuk penanganan file yang mudah untuk digunakan.
File mempunyai atribut – atribut. Beberapa diantaranya adalah:
Elemen Konstanta Delphi Keterangan
Read-Only faReadOnly File dapat dibaca, tetapi tidak dapat
diubah
Hidden faHidden File tidak terlihat pada listing direktori
System faSysFile File untuk sistem dan tidak terlihat pada
listing direktori
Archive faArchive Atribut ini akan berubah menjadi off jika
file sudah di back-up
Atribut – atribut tersebut dapat diset on dan off. Adapun fungsi yang disediakan
Delphi untuk mengetahui dan merubah atribut file adalah FileGetAttr dan
FileSetAttr.
Di dalam Delphi, dikenal dua jenis file, yaitu file teks dan file biner. Pada
modul ini, kita akan membahas file teks terlebih dahulu.
File Teks
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 36
File Teks berisi karakter – karakter ASCII. Data pada file teks disimpan dan
dibaca secara sekuensial satu baris satu baris. Setip baris akan diakhiri dengan
karakter Carriage Return ($D) dan Line Feed ($A).
Agar bisa menggunakan file, pertama perlu dideklarasikan sebuah variabel
bertipe TextFile, misal:
var MyFile : TextFile;
Kemudian, variabel bertipe TextFile tersebut dihubungkan dengan file sebenarnya
dengan mengunakan procedure AssignFile. Contoh:
AssignFile(MyFile, “C:\Coba.Text”);
Beberapa procedure dan function yang digunakan pada file teks:
Procedure Keterangan
Rewrite Procedure ini digunakan untuk membuat dan membuka file baru.
Jika ada file dengan nama yang sama, maka file yang lama akan
diganti dengan file yang baru.
Writeln Procedure ini digunakan untuk menuliskan teks ke dalam file dan
menambahkan karakter CR dan LF pada akhir baris.
CloseFile Procedure ini digunakan untuk mebutup file dan menyimpan
perubahan yang dilakukan.
Reset Procedure ini digunakan untuk membuka file yang sudah ada.
Jika file diakses dengan menggunakan procedure ini, maka file
akan berada dalam modus Read Only dan hanya dapat dibaca
saja.
Readln Procedure ini digunakan untuk membaca sebuah baris dari file
yang sudah dibuka, kemudian memindahkan penunjuk file ke
baris selanjutnya jika penunjuk file belum berada di akhir file.
Eof Function ini digunakan sebagai penunjuk apakah penunjuk file
sudah berada di akhir file atau belum
Latihan 1
1. Buatlah aplikasi seperti di bawah ini
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 37
2. Tambahkan komponen – komponen: 2 Label, 2 Edit, dan 3 Button.
3. Untuk Button1 (dengan Caption Simpan), tambahkan event handler OnClick
dengan kode program berikut:
procedure TForm1.Button1Click(Sender: TObject);
var OutFile: TextFile;
begin
AssignFile(OutFile, 'C:\Tes.txt');
Rewrite(OutFile);
Writeln(OutFile, Edit1.Text);
CloseFile(OutFile);
end;
4. Untuk Button2 (dengan caption Baca)
procedure TForm1.Button2Click(Sender: TObject);
var InFile: TextFile;
str: string;
begin
AssignFile(InFile, 'C:\Tes.txt');
Reset(InFile);
Readln(InFile, str);
Edit2.Text := str;
CloseFile(InFile);
end;
5. Sedangkan Button3 digunakan untuk menghentikan program.
6. Perhatikan apa yang terjadi.
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 38
Latihan 2
1. Buatlah sebuah folder dengan nama File -
2. Di dalam folder tersebut, buatlah sebuah file teks dan beri nama file teks
tersebut dengan Latih.
3. Isikan teks – teks berikut ke dalam file Latih.txt tersebut:
FMIPA
FKU
FKG
FISIPOL
FT
FE
4. Buatlah aplikasi seperti di bawah ini:
5. Simpan aplikasi anda di dalam folder yang telah anda buat pada langkah 1.
6. Tambahkan komponen – komponen: 1 Label, 1 ListBox, dan 2 Button.
7. Tambahkan event handler untuk Button1 dengan caption Baca
procedure TForm1.Button1Click(Sender: TObject);
var FileName: string;
InFile: TextFile;
str: string;
begin
FileName := ExtractFilePath(Application.ExeName) +
'Latih.txt';
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 39
AssignFile(InFile, FileName);
Reset(InFile);
ListBox1.Clear;
while not(Eof(InFile)) do
begin
Readln(InFile, str);
ListBox1.Items.Add(str);
end;
CloseFile(InFile);
end;
8. Sedangkan Button2 digunakan untuk menghentikan program.
9. Perhatikan apa yang terjadi.
File Biner
Semua file yang bukan file teks merupakan file biner. File biner berisikan
informasi biner yang ditulis oleh program (bukan diketik sendiri seperti pada file
teks). File biner adalah file bertipe, di dalamnya dapat bertipe integer, real, string,
dan lain – lain.
Seperti halnya file teks, file biner juga memiliki beberapa procedure yang
bisa digunakan untuk mengolah file. Beberapa diantaranya adalah:
Procedure Keterangan
AssignFile Procedure ini digunakan untuk menghubungkan nama file
dengan variabel file.
Rewrite Procedure ini digunakan untuk membuat dan membuka file baru.
Jika ada file dengan nama yang sama, maka file yang lama akan
diganti dengan file yang baru.
Write Procedure ini digunakan untuk menuliskan record ke dalam file.
CloseFile Procedure ini digunakan untuk mebutup file dan menyimpan
perubahan yang dilakukan.
Reset Procedure ini digunakan untuk membuka file yang sudah ada.
Read Procedure ini digunakan untuk membaca record dari file.
Eof Function ini digunakan untuk menunjukkan akhir dari file.
Seek Procedure ini digunakan untuk menggerakkan pointer ke posisi
tertentu. Pada file teks, hal ini tidak bisa dilakukan, karena file
teks hanya bisa diakses secara sekuensial.
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 40
Latihan 3
1. Buatlah sebuah aplikasi baru.
2. Tambahkan komponen – komponen berikut, 7 Label, 5 Edit, 1 MaskEdit, 2
GroupBox, dan 5 Button.
3. Aturlah komponen – komponen tersebut sehingga tampak seperti gambar di
bawah ini:
4. Namakan setiap Button dengan Bsebelum, Bsesudah, Bsimpan, Bbaru, dan
Bkeluar.
5. Ubah property EditMask dari komponen MaskEdit menjadi \M\M\D\-9999;1;_
6. Simpanlah aplikasi di dalam folder FileBiner -
7. Perhatikan alur aplikasi yang akan anda buat berikut ini:
Nomor record dimulai dari 0, bukan 1.
Pada saat program pertama kali dijalankan, akan dicek apakah file sudah
ada. Jika sudah ada, maka tampilkan record pertama. Jika tidak ada, maka
kotak – kotak edit dibersihkan. Selengkapnya lihat di procedure FormCreate.
Tombol Sebelum digunakan untuk melihat record sebelum record yang
sedang ditunjuk.
Tombol Sesudah digunakan untuk melihat record selanjutnya.
Tombol Simpan digunakan untuk menyimpan data pada kotak – kotak edit
ke dalam file, tombol ini dipakai setelah memakai tombol baru.
Tombol Baru akan membersihkan kotak – kotak edit dan mencari akhir dari
file, sehingga data yang dimasukkan menjadi data terakhir.
Jika ingin melakukan perubahan, tunjuk record tertentu, kemudian setelah
perubahan dilakukan, tekan tombol Simpan.
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 41
Kotak isian UTS, UAS, dan Tugas jika tidak diisi, maka nilainya adalah 0.
8. Listing lengkap program adalah sebagai berikut:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms,
Dialogs, StdCtrls, Mask;
type
TForm1 = class(TForm)
lbl1: TLabel;
lbl2: TLabel;
lbl3: TLabel;
lbl4: TLabel;
lbl5: TLabel;
lbl6: TLabel;
grp1: TGroupBox;
grp2: TGroupBox;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
MaskEdit1: TMaskEdit;
BSebelum: TButton;
BSesudah: TButton;
BSimpan: TButton;
BBaru: TButton;
BKeluar: TButton;
procedure FormCreate(Sender: TObject);
procedure BSebelumClick(Sender: TObject);
procedure BSesudahClick(Sender: TObject);
procedure BBaruClick(Sender: TObject);
procedure BSimpanClick(Sender: TObject);
procedure BKeluarClick(Sender: TObject);
private
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 42
procedure BacaRecord; // Tambahkan Sendiri
procedure SimpanRecord; // Tambahkan Sendiri
procedure TampilkanRecord; // Tambahkan Sendiri
procedure HapusData; // Tambahkan Sendiri
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
type
Mahasiswa = record
NIM: string[5];
Nama: string[20];
KodeMK: string[8];
UTS: Real;
UAS: Real;
Tugas: Real;
end;
var
FileMhs: file of Mahasiswa;
DataMhs: Mahasiswa;
NamaFile: string;
RecSekarang: Longint;
{ TForm1 }
procedure TForm1.BacaRecord;
begin
Read(FileMhs, DataMhs);
end;
procedure TForm1.HapusData;
begin
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 43
Edit1.Clear;
Edit2.Clear;
MaskEdit1.Clear;
Edit3.Clear;
Edit4.Clear;
Edit5.Clear;
end;
procedure TForm1.SimpanRecord;
begin
with DataMhs do
begin
NIM := Edit1.Text;
Nama := Edit2.Text;
KodeMK := MaskEdit1.Text;
if Edit3.Text <> '' then UTS := StrToFloat(Edit3.Text) else UTS :=
0;
if Edit4.Text <> '' then UAS := StrToFloat(Edit4.Text) else UAS :=
0;
if Edit5.Text <> '' then Tugas := StrToFloat(Edit5.Text) else
Tugas := 0;
end;
Write(FileMhs, DataMhs);
end;
procedure TForm1.TampilkanRecord;
begin
with DataMhs do
begin
Edit1.Text := NIM;
Edit2.Text := Nama;
MaskEdit1.Text := KodeMK;
Edit3.Text := FloatToStr(UTS);
Edit4.Text := FloatToStr(UAS);
Edit5.Text := FloatToStr(Tugas);
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 44
HapusData;
RecSekarang := 0;
NamaFile := ExtractFilePath(Application.ExeName) + 'Mhs.dat';
AssignFile(FileMhs, NamaFile);
if FileExists(NamaFile) then
begin
Reset(FileMhs);
if not Eof(FileMhs) then
begin
BacaRecord;
TampilkanRecord;
end;
end
else
begin
HapusData;
Rewrite(FileMhs);
end;
end;
procedure TForm1.BSebelumClick(Sender: TObject);
begin
if RecSekarang - 1 < 0 then
begin
RecSekarang := 0;
Seek(FileMhs, RecSekarang);
ShowMessage('Ini adalah awal dari file');
end
else
begin
RecSekarang := RecSekarang - 1;
Seek(FileMhs, RecSekarang);
BacaRecord;
Seek(FileMhs, RecSekarang);
TampilkanRecord;
end;
end;
procedure TForm1.BSesudahClick(Sender: TObject);
begin
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 45
RecSekarang := RecSekarang + 1;
Seek(FileMhs, RecSekarang);
if not Eof(FileMhs) then
begin
BacaRecord;
Seek(FileMhs, RecSekarang);
TampilkanRecord;
end
else
begin
RecSekarang := RecSekarang - 1;
Seek(FileMhs, RecSekarang);
ShowMessage('Ini adalah akhir dari file');
end;
end;
procedure TForm1.BBaruClick(Sender: TObject);
begin
repeat
RecSekarang := RecSekarang + 1;
Seek(FileMhs, RecSekarang);
until Eof(FileMhs);
HapusData;
SimpanRecord;
Seek(FileMhs, RecSekarang);
end;
procedure TForm1.BSimpanClick(Sender: TObject);
begin
SimpanRecord;
TampilkanRecord;
end;
procedure TForm1.BKeluarClick(Sender: TObject);
begin
SimpanRecord;
CloseFile(FileMhs);
Application.Terminate;
end;
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 46
end.
Tugas
Buatlah sebuah program untuk membaca sebuah file teks dan menampilkan
hasilnya ke dalam komponen TMemo
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 47
MODUL VI
DATABASE INTERBASE DAN KOMPONEN TABEL
Tujuan
- Memahami database Interbase dalam Delphi
- Dapat membuat tabel dengan Interbase
- Dapat membuat program dengan Delphi untuk mengakses database
Interbase
Dasar Teori
Database
Pada pertemuan sebelumnya, anda telah mengenal tipe data file untuk
menyimpan data di luar program. Selain menggunakan tipe data file, sebenarnya
kita juga bisa menyimpan data, di luar program, dengan menggunakan database.
Berdasarkan lisensinya, database dibedakan menjadi database komersial
dan database yang free dan open source. Adapun contoh database komersial
antara lain Interbase, Oracle, SQL Server. Sedangkan contoh database free dan
open source antara lain adalah Firebird dan PostgreSQL.
Selain itu database juga dibedakan berdasarkan kebutuhan akan server.
Contoh database yang memerlukan server antara lain Firebird, Interbase, MySQL,
Oracle, SQL Server. Adapun contoh database yang tidak memerlukan server antara
lain Paradox, Access.
Interbase
Borland Interbase 7.1 adalah database transaksional yang ekonomis dan
memiliki performa yang tinggi, dan banyak digunakan oleh jutaan pengguna di
seluruh dunia. Dengan mengkombinasi instalasi yang mudah, crash-recovery secara
otomatis, dan perawatan yang sangat minim, Interbase menjadi sangat sesuai
untuk embedding dalam aplikasi terdistribusi. Dukungan terhadap multiprosesor
dan arsitektur yang canggih menjadikannya sebuah pilihan yang tepat untuk
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 48
aplikasi bisnis dengan kekuatan tinggi yang memiliki banyak pengguna yang
terkoneksi. Kekuatannya, yaitu kemudahan penggunaan, dukungan terhadap
platform Windows, Linux, dan Solaris (termasuk pengembangan dalam lingkungan
seperti Borland Delphi, C++ Builder, dan Kylix), membuat Interbase menjadi favorit
bagi para pengembang.2
Menjalankan Server Interbase
– Buka jendela Interbase server manager melalui menu: All Programs > Interbase
> Interbase server manager
– Kemudian perhatikan status Interbase server
– Jika sudah Running, maka biarkan saja. Akan tetapi, jika masih Stopped,
jalankan server interbase dengan cara menekan tombol Start
IBConsole
Untuk mempermudah pengelolaan database interbase, ada sebuah tool
yang disediakan oleh Interbase dan disebut dengan IBConsole. Untuk menjalankan
IBConsole buka menu All Programs > Interbase > IBConsole. Selanjutnya akan
muncul dialog seperti di bawah ini:
2 Dafferianto, BORLAND INTERBASE 7.1,
www.dafferianto.web.ugm.ac.id/mystudy/database/Tugas%20Interbase.doc
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 49
– Di dalam IBConsole, ada 2 bagian utama yang perlu anda ketahui. Bagian
pertama merupakan tree server interbase, termasuk database yang terdaftar,
terletak di sebelah kiri.
– Bagian kedua, yang terletak di sebelah kanan, merupakan detil dari setiap node.
Mendaftarkan server di dalam IBConsole
Sebelum kita bisa membuat database di dalam Interbase, terlebih dahulu
kita harus mendaftarkan server di dalam server ke dalam IBConsole. Adapun
caranya adalah:
– Double Click Interbase Servers
– Kemudian akan muncul Dialog Register Server and Connect
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 50
– Di dalam dialog tersebut, pilih Local Server.
– Anda juga bisa memilih Remote server jika server interbase tidak berada di
satu komputer yang sama tapi terhubung jaringan.
– Isikan username: sysdba; password: masterkey (Ingat: case sensitive!!!)
– Jika server sudah terdaftar dan sudah connect, maka akan muncul seperti di
bawah ini:
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 51
– Klik tanda + untuk meng-ekspand tree Local Server
– Kemudian anda akan mendapati Node Database, Backup, Certificates, Server
Log, dan Users
Membuat Database Baru
Adapun langkah untuk membuat database baru adalah:
– klik kanan pada node Database
– Kemudian anda bisa memilih register database atau create database
– Register database: berarti anda sudah mempunyai file database interbase
– Create database: berarti anda membuat database baru
– Karena sekarang kita akan membuat database baru, berarti anda pilih Create
Database
– Selanjutnya akan muncul jendela Create Database, kemudian isi sesuai dengan
gambar di bawah ini:
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 52
– Jika sudah, klik tombol OK. Selanjutnya di dalam IBConsole akan tampil seperti
di bawah ini:
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 53
Membuat Tabel
Untuk membuat tabel, langkahnya adalah sebagai berikut:
– Klik node Tables
– Kemudian klik kanan di bagian detil node Tables
– Pilih menu create
– Selanjutnya akan muncul dialog Table Editor
– Dalam dialog Table Editor di atas, ada 3 bagian yang perlu anda perhatikan:
– Nama Table
– Daftar Field
– Primary Key
– Untuk membuat suatu table, minimal anda perlu mengisikan nama table dan
field tabel
Menambahkan Field ke dalam Tabel
Untuk menambahkan field tabel, langkahnya adalah:
– Klik kanan pada bagian Daftar Field di dialog Table Editor
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 54
– Pilih Add Field
– Selanjutnya akan muncul dialog Field Property Editor
– Setiap field di dalam tabel, akan mempunyai satu tipe data, misalnya integer,
varchar, numeric, dan sebagainya. Di dalam Interbase, tipe data dari suatu field
disimpan di dalam sebuah domain.
– Oleh karena itu, untuk bisa membuat field, anda juga harus mendefinisikan
domainnya.
– Sebagai catatan, jumlah domain tidak harus sama dengan jumlah field. Karena
sebuah domain, bisa dipakai oleh lebih dari field, asalkan field tersebut
ditujukan untuk menyimpan tipe data yang sama. Misalkan, anda membuat
domain nim, isinya tipe data varchar dengan panjang 9 karakter. Domain ini
akan bisa digunakan untuk field – field yang digunakan untuk menyimpan data
nim. Kalau domain ini anda gunakan untuk field yang akan menyimpan nama
mahasiswa, ini kurang tepat, karena panjang dari sebuah nama bisa lebih dari 9
karakter. Lebih tidak tepat lagi kalau anda menggunakan domain nim untuk
field yang menyimpan nilai integer.
– Untuk bisa menambahkan domain, caranya adalah sebagai berikut:
– klik tombol New Domain
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 55
– Kemudian akan muncul dialog Domain Editor
– Di dalam dialog Domain editor tersebut, ada 4 hal yang bisa anda isi:
– Domain Name >> untuk mengisi nama domain
– Data Type >> untuk mengisi tipe data domain
– Default >> untuk mengisi nilai default, boleh tidak diisi
– Not null >> jika anda pilih, maka field yang memakai domain ini tidak
boleh kosong (null)
– Sekarang coba isikan Domain Name: nim
– Kemudian untuk Data Type, anda bisa menekan tombol berlabel ...
– Selanjutnya akan muncul dialog Data Type
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 56
– Karena nim itu adalah kumpulan dari karakter, maka pada combo box SQL
Type anda pilih VARCHAR
– Selanjutnya dialog Data Type akan berubah menjadi
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 57
– Coba anda ubah Character length menjadi 4
– Kemudian Klik OK
– Selanjutnya Klik OK Kembali pada dialog Domain Editor
– Sekarang, coba anda tambahkan 2 domain lagi, yaitu
– nama: varchar(50)
– prodi: varchar(25)
– Setelah anda mempunyai 3 buah domain, anda bisa menambahkan field – field
berikut ini:
– NIM >> domain nim
– NAMA >> domain nama
– PRODI >> domain prodi
– Setelah anda menambahkan ketiga field tersebut, jangan lupa memasukkan
nama Table, yaitu MAHASISWA
– Kemudian, pada dialog Table Editor akan tampak seperti di bawah ini:
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 58
Mengisikan Data Ke Dalam Table dengan Menggunakan IBConsole
Untuk bisa mengisikan data ke dalam table melaui IBConsole, langkah yang harus
anda lakukan adalah:
– Klik dua kali pada tabel MAHASISWA
– Kemudian akan muncul dialog Properties of MAHASISWA
– Pilih tab Data Kemudian masukkan data seperti table di bawah ini:
NIM NAMA PRODI
0100 Hesti Ilmu Komputer
0103 Nana Matematika
0104 Dina D3 Komsi
0107 Lorenza D3 Komsi
– Kemudian klik Commit & Refresh
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 59
Menampilkan Data Dari Database Interbase Melalui Aplikasi yang
Dibangun dengan Menggunakan Delphi 2005
Setelah anda membuat database dan table di dalam Interbase serta mengisikan
data, anda bisa menampilkan data tersebut ke dalam program yang anda buat
sendiri dengan menggukan Delphi 2005, caranya adalah:
– Buka aplikasi Delphi 2005
– Buat Project Baru
– Pada Tool Palette, buka kategori Interbase
– Kemudian tambahkan komponen TIBDatabase ke dalam form
– Ubah property name menjadi DBCoba
– Selanjutnya klik dua kali pada komponen tersebut untuk memunculkan dialog
Database Component Editor
– Untuk connection anda pilih local
– Kemudian untuk file database-nya, klik browse dulu untuk mencari file yang
anda inginkan
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 60
– Masukkan username: sysdba; password: masterkey
– Klik test untuk mencoba koneksi ke database, jika sukses, muncul pesan seperti
di bawah ini
– Klik ok untuk menyimpan konfigurasi
– Kemudian dari kategori Interbase, tambahkan komponen TIBTransaction
– Ubah property name menjadi TransCoba
– Isikan property Default Database dengan DBCoba
– Kemudian tambahkan komponen TIBTable
– Ubah property name menjadi TbMahasiswa
D3 KOMSI
FMIPA UGM
KERJA LAB PEMROGRAMAN VISUAL I 61
– Isikan property Database dengan DBCoba
– Isikan property Transaction dengan TransCoba
– Isikan property TableName dengan MAHASISWA
– Ubah property Active menjadi true
– Selanjutnya, buka kategori Data Access
– Tambahkan komponen TdataSource
– Ubah property name menjadi DSMahasiswa
– Isikan property DataSet dengan TbMahasiswa
– Selanjutnya, buka kategori Data Control
– Tambahkan komponen TDBGrid
– Kemudian isi property DataSource dengan DSMahasiswa
– Terakhir, jalankan program anda dan perhatikan apa yang terjadi
Latihan:
Buatlah sebuah database dengan menggunakan Interbase dengan nama PEGAWAI.
Database ini mempunyai table BIODATA_PEGAWAI yang memiliki field sebagai
berikut:
– NIP (varchar(9))
– NAMA (varchar(64))
– ALAMAT (varchar(128))
– TEMPAT_LAHIR (varchar(32))
– TANGGAL_LAHIR (Integer)
– BULAN_LAHIR (Integer)
– TAHUN_LAHIR (Integer)
– HOBI (varchar(256))
Setelah anda membuat database dan table, buatlah sebuah aplikasi untuk
menampilkan isi BIODATA_PEGAWAI!
D3 KOMSI Read More..
Foto saya
Purworejo, jawa tengah, Indonesia
Institut Sains & Teknologi AKPRIND Yogyakarta
"Blink 182"