Apa itu Drupal ?
Menurut id.wikipedia, Drupal
disebutkan sebagai CMS(Content Management System), namun bagi Anda yang
telah menjadi master Drupal, Anda pasti setuju dengan saya apabila
Drupal lebih dari sekadar CMS. Bagi saya, Drupal sebenarnya adalah suatu
CMF (Content Management Framework) namun sudah berbasis user-friendly
interface (mungkin dapat dikatakan semi CMS) dibandingkan dengan
beberapa PHP framework yang saya pelajari.
Drupal adalah sebuah perangkat lunak yang open source yang di
distribusikan di bawah lisensi GPL, Pengembangan dan perawatannya
dilakukan oleh ribuan komunitas pengguna dan pengembang di seluruh
dunia. Drupal dapat diunduh secara bebas dan dapat digunakan secara
bebas juga, sehingga memungkinkan setiap orang baik secara individu
maupun komunitas untuk mempublikasi, mengatur dan mengorganisir berbagai
jenis dari isi/konten pada website.
Drupal dapat digunakan untuk membangun:
* Portal Web Komunitas
* Situs Diskusi
* Website Perusahaan
* Aplikasi Internal
* Website Personal atau Blog
* Aplikasi Komersial E-Commerce
* Kumpulan Sumber Informasi
* Situs Jaringan Sosial
* Website Multi Bahasa
* Dan lain-lain
Drupal
dapat langsung digunakan setelah anda mendownload dan menginstallnya
secara mudah. Dengan berbagai fungsionalitas yang sudah dibangun,
dikombinasikan dengan ribuan paket modul drupal dan tema tampilan bebas
yang tersedia, akan mengaktifkan berbagai fitur seperti :
* Sistem Manajemen Konten (Content Management Systems) (CMS)
* Blog
* Forum
* Jaringan Peer-to peer (Peer-to-peer networking)
* Surat Kabar (Newsletters)
* Multimedia
* Galeri Foto / Gambar (Picture galleries)
* Pengunggahan dan Pengunduhan File (File uploads and downloads)
* Dan lebih banyak lagi.
Ditulis
dengan bahasa PHP. Drupal jalan di atas berbagai sistem operasi
Microsoft Windows, Mac OS X, Linux, FreeBSD dan lain-lain yang mendukung
server web Apache atau IIS dan membutuhkan program database seperti
MySQL dan PostgreSQL untuk menyimpan semua datanya.
Pembahasan saya kali ini adalah menjelaskan awal mula java di lahirkan,,
oke,,berangkat gan,,,
e-IT November 06, 2011 New Google SEO Bandung, Indonesia
oke,,berangkat gan,,,
Java
pertama lahir dari The Green Project, yang berjalan selama 18 bulan, dari awal
tahun 1991 hingga musim panas 1992. Proyek tersebut belum menggunakan versi
yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, James
Gosling dan Bill Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah
satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang.
Pertemuan
proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park.
Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program
Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan
teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini.
Teknologi baru ini dinamai "*7" (Star Seven).
Setelah
era Star Seven selesai, sebuah anak perusahaan TV kabel tertarik ditambah
beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya
pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.
Perusahaan
baru ini bertambah maju: jumlah karyawan meningkat dalam waktu singkat dari 13
menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet
sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal
tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di
kalangan akademisi dan militer.
Mereka
menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat
perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an,
Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi
Hot Java.
Pada
sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2
dibuka. Kesuksesan mereka diikuti dengan untuk pemeritaan pertama kali pada
surat kabar San Jose Mercury News pada tanggal 23 Mei 1995.
Sayang
terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah
ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt
dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk
Netscape.
Nama
Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja
"bapak java", James Gosling. Nama Oak ini tidak dipakai untuk versi
release Java karena sebuah perangkat lunak sudah terdaftar dengan merek dagang
tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini
diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan
Gosling.
VERSI
Versi
awal Java ditahun 1996 sudah merupakan
versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan
banyak paket standar awal yang terus dikembangkan pada versi selanjutnya:
· java.lang:
Peruntukan kelas elemen-elemen dasar.
· java.io:
Peruntukan kelas input dan output, termasuk penggunaan berkas.
· java.util:
Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas
penanggalan.
· java.net:
Peruntukan kelas TCP/IP, yang
memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP.
· java.awt:
Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)
· java.applet:
Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web.
KELEBIHAN
· Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di
beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis
sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup menulis
sebuah program Java dan dikompilasi (diubah, dari bahasa yang dimengerti
manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat
dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini
memungkinkan sebuah program berbasis java dikerjakan diatas operating system
Linux tetapi dijalankan dengan baik di atas Microsoft Windows. Platform yang
didukung sampai saat ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris. Penyebanya
adalah setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat
diunduh dari situs Java) untuk meninterpretasikan bytecode tersebut.
· OOP
(Object Oriented Programming - Pemrogram Berorientasi Objek) yang
artinya semua aspek yang terdapat di Java adalah Objek.
Java merupakan salah satu bahasa pemrograman berbasis oebjek secara murni.
Semua tipe data diturunkan dari kelas dasar yang disebut Object. Hal ini
sangat memudahkan pemrogram untuk mendesain, membuat, mengembangkan dan
mengalokasi kesalahan sebuah program dengan basis Java secara cepat, tepat,
mudah dan terorganisir. Kelebihan ini menjadikan Java sebagai salah satu bahasa
pemograman termudah, bahkan untuk fungsi fungsi yang advance seperti komunikasi
antara komputer sekalipun.
· Perpustakaan Kelas Yang Lengkap, Java terkenal dengan kelengkapan library/perpustakaan (kumpulan program program yang disertakan
dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para
pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah
dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan
baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi.
· Bergaya C++, memiliki sintaks seperti bahasa pemrograman [C++] sehingga
menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java
sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java.
Universitas-universitas di Amerika juga mulai berpindah dengan mengajarkan Java
kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat
berguna juga bagi mereka yang bukan mengambil jurusan komputer.
· Pengumpulan
sampah otomatis, memiliki fasilitas
pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan
pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai
secara luas).
KEKURANGAN
· Tulis sekali, perbaiki di mana saja - Masih ada beberapa hal yang tidak kompatibel antara platform
satu dengan platform lain. Untuk J2SE,
misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X.
· Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi
menjadi kode sumber. Ini dimungkinkan karena koe jadi Java merupakan bytecode
yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas,
metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang
digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.
· Penggunaan memori yang banyak. Penggunaan memori untuk program berbasis Java jauh lebih
besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object
Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang
menggunakan teknologi terbaru (karena trend memori terpasang makin murah),
tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin
komputer berumur lebih dari 4 tahun.
e-IT November 06, 2011 New Google SEO Bandung, Indonesia
Apa sih auto forwarding SMS itu??
Misalkan Anda memiliki sejumlah nomor hp teman atau member yang jumlahnya
banyak sekali, bisa ratusan atau ribuan yang tersimpan di database SMS center.
Nah… jika Anda ingin mengirim pesan SMS ke semua nomor tersebut, Anda tinggal
kirim SMS ke SMS center yang Anda buat sendiri dengan format pesan misalnya:
FWD#PESAN maka otomatis pesan akan diteruskan oleh SMS center ke semua nomor hp
yang ada di database.
Kalau sudah paham apa itu SMS Auto
Forwarding, bagaimana cara membuatnya? Untuk membuat SMS auto forwarding ini,
yang Anda butuhkan adalah PC server yang di dalamnya sudah terinstal Gammu sebagai gateway untuk SMS nya, web server
(saya sarankan menggunakan AppServ). Di dalam AppServ ini sudah terdapat
Apache sebagai webserver, PHP server dan juga mysql. Oya sampai lupa, untuk
keperluan sms gateway ini Anda juga harus punya modem untuk pengiriman sms nya.
Adapun langkah pertama yang Anda
harus lakukan untuk membuat sms auto forwarding ini adalah instalasi Gammu nya. Setelah instalasi Gammu,
Anda akan mendapatkan beberapa buah tabel di database mysql seperti pada gambar
berikut ini (gunakan phpmyadmin)
Di antara beberapa tabel di atas,
terdapat sebuah tabel bernama ‘pbk’. Tabel ini merupakan singkatan dari
‘phonebook’ yang nantinya digunakan untuk menyimpan data nomor hp yang nantinya
bisa dikirimi pesan SMS auto forwarding ini. Silakan isi beberapa data nomor hp
beserta nama pemiliknya.
Selanjutnya kita buat script PHP
untuk memproses SMS auto forwarding ini. Script PHP ini nanti harus senantiasa
berjalan di browser. Anda bisa menggunakan teknik auto refresh pada browser
atau menggunakan teknik AJAX.
Ide pembuatan script PHP untuk
memproses SMS auto forwarding ini kita harus memecah keyword FWD#PESAN terlebih
dahulu. Bila diawali dengan keyword FWD maka barulah proses forwarding ini
dilakukan. Selanjutnya bila keywordnya benar-benar diawali dengan FWD, maka
PESAN akan dikirim ke semua nomor hp yang ada di tabel ‘pbk’. Tanda # digunakan
untuk memisahkan keyword dengan pesan yang akan dikirim. Untuk memecah string
dari SMS, kita bisa menggunakan function explode() di PHP.
Berikut ini adalah script PHP untuk
SMS autoforwarding ini.
run.php
01.<?php
02.
03.// koneksi ke
database gammu
04.mysql_connect("dbhost",
"dbuser", "dbpass");
05.mysql_select_db("dbname");
06.
07.// membaca sms yang
masuk dan belum diproses
08.$query =
"SELECT * FROM inbox WHERE Processed = 'false'";
09.$hasil =
mysql_query($query);
10.while ($data =
mysql_fetch_array($hasil))
11.{
12. //
membaca id sms
13. $id =
$data['ID'];
14. //
membaca isi sms
15. $sms =
$data['TextDecoded'];
16.
17. //
memecah isi sms berdasarkan karakter #
18. $pecah =
explode("#", $sms);
19.
20. //
cek keywordnya apakah sama dengan 'FWD'?
21. if (strtoupper($pecah[0])
== "FWD")
22. {
23. //
jika keywordnya FWD maka lakukan proses forwarding
24.
25. //
membaca data phonebook dari tabel 'pbk'
26. $query2 =
"SELECT * FROM pbk";
27. $hasil2 =
mysql_query($query2);
28. while ($data2 =
mysql_fetch_array($hasil2))
29. {
30. //
membaca nomor hp
31. $nohp =
$data2['Number'];
32. //
membaca isi pesan yang akan diforward
33. $pesan =
$pecah[1];
34. //
proses pengiriman pesan ke setiap no hp
35. $query3 =
"INSERT INTO outbox (DestinationNumber, TextDecoded, CreatorID) VALUES
('$nohp', '$pesan', 'Gammu')";
36. mysql_query($query3);
37. }
38. }
39.
40. //
menandai sms telah diproses
41. $query2 =
"UPDATE inbox SET Processed = 'true' WHERE ID = '$id'";
42. mysql_query($query2);
43.}
44.
45.?>
Keterangan:
Mungkin Anda bertanya-tanya, mengapa
di pengecekan keywordnya saya menggunakan strtoupper()? ya… hal
ini dikarenakan cara penulisan sms bisa berbeda-beda pada besar kecilnya huruf.
Oleh karena itu saya buat menjadi besar semua (kapital). Namun kapitalisasi
huruf ini hanya saya berikan pada keywordnya saja, sedangkan untuk pesan yang
akan diforward tidak perlu. Kapitalisasi huruf pada keyword ini penting karena
di PHP penulisan huruf kecil dan besar pada suatu string itu berbeda (case
sensitive). Sebagai contoh penulisan ‘FWD’ dengan ‘Fwd’ atau ‘fwd’ atau ‘fwD’
semuanya berbeda.
Nah… selanjutnya script di atas
harus dijalankan terus menerus di web server. Jika secara manual, Anda musti
merefresh script di atas pada browser terus menerus supaya bisa memproses SMS
yang masuk. Namun hal ini tentu tidak mungkin bukan? So… kita harus membuat
sistem otomatisasi supaya script di atas bisa melakukan refresh sendiri. Anda
bisa menggunakan teknik auto refresh atau menggunakan AJAX.
Untuk kali ini kita mencoba
menggunakan AJAX untuk menjalankan script run.php di atas secara otomatis. Oleh
karena itu perlu kita buat script index.html yang di dalamnya kita sisipkan
script AJAX untuk menjalankan script run.php.
index.html
01.<html>
02.<head>
03. <title>SMS
Auto Forwarding</title>
04. <script type="text/javascript">
05.
06. function
ajax()
07. {
08. if
(window.XMLHttpRequest)
09. {
10. xmlhttp=new
XMLHttpRequest();
11. }
12. else
13. {
14. xmlhttp
=new ActiveXObject("Microsoft.XMLHTTP");
15. }
16.
17. xmlhttp.open("GET","run.php");
18. xmlhttp.send();
19. setTimeout("ajax()",
5000);
20. }
21. </script>
22.
23.</head>
24.
25.<body onload="ajax()">
26. <h1>SMS
Auto Forwarding running...</h1>
27.</body>
28.</html>
Script AJAX di atas secara otomatis
akan melakukan refresh script run.php setiap selang 5 detik (5000 milisekon).
Lantas… dari kedua script di atas manakah yang nantinya akan dijalankan di
browser? Anda cukup menjalankan index.html nya saja.
Mudah bukan membuatnya? script di
atas dijalankan dengan sukses di Gammu 1.25.0, menggunakan modem Wavecom dan dengan browser Firefox.
e-IT
October 31, 2011
New Google SEO
Bandung, Indonesia
e-IT
October 29, 2011
New Google SEO
Bandung, Indonesia
Program kalkulator adalah program standar yang sudah tersedia di Microsoft Windows. Tetapi, tak ada
salahnya jika kita mencoba membuat kalkulator sendiri dengan Microsoft Visual Basic 6.0.
Pertama-tama, buatlah sebuah form sesuai selera Anda, yang bentuknya kurang lebih seperti
kalkulator standar Windows, seperti ini:
Lisensi Dokumen:
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan
secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus
atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin
terlebih dahulu dari IlmuKomputer.Com.
Untuk properties dari masing-masing objek, saya contohkan seperti dibawah ini, dengan letak
masing-masing objek disesuaikan dengan gambar diatas.
Textbox 1:
(Name) : txtDisplay
Alignment: 1-Right Justify
Text : (kosongkan)
Maxlength : 12
Command Button 1:
(Name) : cmdAngka
Index : 1
Caption : 1
Command Button 2:
(Name) : cmdAngka
Index : 2
Caption : 2
Command Button 3:
(Name) : cmdAngka
Index : 3
Caption : 3
Command Button 4:
(Name) : cmdAngka
Index : 4
Caption : 4
Command Button 5:
(Name) : cmdAngka
Index : 5
Caption : 5
Command Button 6:
(Name) : cmdAngka
Index : 6
Caption : 6
Command Button 7:
(Name) : cmdAngka
Index : 7
Caption : 7
Command Button 8:
(Name) : cmdAngka
Index : 8
Caption : 8
Command Button 9:
(Name) : cmdAngka
Index : 9
Caption : 9
Artikel Populer IlmuKomputer.Com
Copyright © 2005 IlmuKomputer.Com
3
Command Button 10:
(Name) : cmdAngka
Index : 0
Caption : 0
Command Button 11:
(Name) : cmdPlusMinus
Caption : +/-
Command Button 12:
(Name) : cmdKoma
Caption : .
Command Button 13:
(Name) : cmdOperator
Index : 1
Caption : +
Command Button 14:
(Name) : cmdOperator
Index : 2
Caption : -
Command Button 15:
(Name) : cmdOperator
Index : 3
Caption : x
Command Button 16:
(Name) : cmdOperator
Index : 4
Caption : /
Command Button 17:
(Name) : cmdClearEntry
Caption : CE
Command Button 18:
(Name) : cmdClear
Caption : C
Command Button 19:
(Name) : cmdSamaDengan
Caption : =
Berikutnya, Anda tinggal membuat coding dari kalkulator tersebut. Jika Anda mengikuti semua
setting properties seperti diatas, maka codingnya saya contohkan seperti ini:
Option Explicit
Private Hasil As Double
Private Const opNol = 0
Private Const opTambah = 1
Private Const opKurang = 2
Private Const opKali = 3
Artikel Populer IlmuKomputer.Com
Copyright © 2005 IlmuKomputer.Com
4
Private Const opBagi = 4
Private Operator As Integer
Private NilaiBaru As Boolean
' untuk menghapus karakter terakhir
Private Sub Hapus()
Dim txt As String
Dim min_len As Integer
txt = txtDisplay.Text
If Left$(txt, 1) = "-" Then
min_len = 2
Else
min_len = 1
End If
If Len(txt) > min_len Then
txtDisplay.Text = Left$(txt, Len(txt) - 1)
Else
txtDisplay.Text = "0"
End If
End Sub
' hapus angka, hasil terakhir dan operator
Private Sub cmdClear_Click()
cmdClearEntry_Click
Hasil = 0
Operator = opNol
End Sub
' hapus angka
Private Sub cmdClearEntry_Click()
txtDisplay.Text = ""
End Sub
' menambahkan koma (desimal)
Private Sub cmdKoma_Click()
If InStr(txtDisplay.Text, ".") Then
Beep
Else
If NilaiBaru Then
txtDisplay.Text = "."
NilaiBaru = False
Else
txtDisplay.Text = txtDisplay.Text & "."
End If
End If
End Sub
' Menghitung
Private Sub cmdSamaDengan_Click()
Dim HasilBaru As Double
If txtDisplay.Text = "" Then
HasilBaru = 0
Artikel Populer IlmuKomputer.Com
Copyright © 2005 IlmuKomputer.Com
5
Else
HasilBaru = CDbl(txtDisplay.Text)
End If
Select Case Operator
Case opNol
Hasil = HasilBaru
Case opTambah
Hasil = Hasil + HasilBaru
Case opKurang
Hasil = Hasil - HasilBaru
Case opKali
Hasil = Hasil * HasilBaru
Case opBagi
'Tidak bisa dibagi nol
If HasilBaru = 0 Then
MsgBox "Tidak bisa dibagi 0", vbOKOnly + vbCritical, "Kalku ERROR"
Call cmdClear_Click
Else
Hasil = Hasil / HasilBaru
End If
End Select
Operator = opNol
NilaiBaru = True
txtDisplay.Text = Format$(Hasil)
End Sub
' menuliskan angka
Private Sub cmdAngka_Click(Index As Integer)
If NilaiBaru Then
txtDisplay.Text = Format$(Index)
NilaiBaru = False
Else
txtDisplay.Text = _
txtDisplay.Text & Format$(Index)
End If
End Sub
' tombol tambah/kurang/bagi/kali
Private Sub cmdOperator_Click(Index As Integer)
cmdSamaDengan_Click
Operator = Index
NilaiBaru = True
End Sub
' merubah tanda +/-
Private Sub cmdPlusMinus_Click()
If NilaiBaru Then
txtDisplay.Text = "-"
ElseIf Left$(txtDisplay.Text, 1) = "-" Then
txtDisplay.Text = Right$(txtDisplay.Text, 2)
Else
Artikel Populer IlmuKomputer.Com
Copyright © 2005 IlmuKomputer.Com
6
txtDisplay.Text = "-" & txtDisplay.Text
End If
End Sub
' filter untuk angka saja yg dapat diketikkan
Private Sub Form_KeyPress(KeyAscii As Integer)
txtDisplay_KeyPress KeyAscii
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
txtDisplay_KeyUp KeyCode, Shift
End Sub
' supaya kursor tetap di kanan
Private Sub txtDisplay_Change()
txtDisplay.SelStart = Len(txtDisplay.Text)
End Sub
Private Sub txtDisplay_GotFocus()
txtDisplay_Change
End Sub
' untuk mengetikkan angka di keyboard
Private Sub txtDisplay_KeyPress(KeyAscii As Integer)
Dim ch As String
ch = Chr$(KeyAscii)
Select Case ch
Case "0"
cmdAngka_Click 0
Case "1"
cmdAngka_Click 1
Case "2"
cmdAngka_Click 2
Case "3"
cmdAngka_Click 3
Case "4"
cmdAngka_Click 4
Case "5"
cmdAngka_Click 5
Case "6"
cmdAngka_Click 6
Case "7"
cmdAngka_Click 7
Case "8"
cmdAngka_Click 8
Case "9"
cmdAngka_Click 9
Case "*", "x", "X"
cmdOperator_Click opKali
Case "+"
cmdOperator_Click opTambah
Case vbCrLf, vbCr, "="
Artikel Populer IlmuKomputer.Com
Copyright © 2005 IlmuKomputer.Com
7
cmdSamaDengan_Click
Case "-"
cmdOperator_Click opKurang
Case "."
cmdKoma_Click
Case "/"
cmdOperator_Click opBagi
Case "C", "c"
cmdClearEntry_Click
End Select
KeyAscii = 0
End Sub
' untuk ketikan angka di numpad
Private Sub txtDisplay_KeyUp(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyNumpad0
cmdAngka_Click 0
Case vbKeyNumpad1
cmdAngka_Click 1
Case vbKeyNumpad2
cmdAngka_Click 2
Case vbKeyNumpad3
cmdAngka_Click 3
Case vbKeyNumpad4
cmdAngka_Click 4
Case vbKeyNumpad5
cmdAngka_Click 5
Case vbKeyNumpad6
cmdAngka_Click 6
Case vbKeyNumpad7
cmdAngka_Click 7
Case vbKeyNumpad8
cmdAngka_Click 8
Case vbKeyNumpad9
cmdAngka_Click 9
Case vbKeyMultiply
cmdOperator_Click opKali
Case vbKeyAdd
cmdOperator_Click opTambah
Case vbKeySeparator
cmdSamaDengan_Click
Case vbKeySubtract
cmdOperator_Click opKurang
Case vbKeyDivide
cmdOperator_Click opBagi
Case vbKeyDecimal
cmdKoma_Click
Case vbKeyBack, vbKeyDelete
Hapus
End Select
KeyCode = 0
End Sub
Silahkan modifikasi sendiri program Anda. Dapat saja ditambahkan fungsi yang lain seperti akar,
kuadrat atau bahkan trigonometri.
Source code diperoleh dari
www.planetsourcecode.com
Terima kasih & Selamat Mencoba!
e-IT
January 12, 2011
New Google SEO
Bandung, Indonesiasalahnya jika kita mencoba membuat kalkulator sendiri dengan Microsoft Visual Basic 6.0.
Pertama-tama, buatlah sebuah form sesuai selera Anda, yang bentuknya kurang lebih seperti
kalkulator standar Windows, seperti ini:
Lisensi Dokumen:
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan
secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus
atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin
terlebih dahulu dari IlmuKomputer.Com.
Untuk properties dari masing-masing objek, saya contohkan seperti dibawah ini, dengan letak
masing-masing objek disesuaikan dengan gambar diatas.
Textbox 1:
(Name) : txtDisplay
Alignment: 1-Right Justify
Text : (kosongkan)
Maxlength : 12
Command Button 1:
(Name) : cmdAngka
Index : 1
Caption : 1
Command Button 2:
(Name) : cmdAngka
Index : 2
Caption : 2
Command Button 3:
(Name) : cmdAngka
Index : 3
Caption : 3
Command Button 4:
(Name) : cmdAngka
Index : 4
Caption : 4
Command Button 5:
(Name) : cmdAngka
Index : 5
Caption : 5
Command Button 6:
(Name) : cmdAngka
Index : 6
Caption : 6
Command Button 7:
(Name) : cmdAngka
Index : 7
Caption : 7
Command Button 8:
(Name) : cmdAngka
Index : 8
Caption : 8
Command Button 9:
(Name) : cmdAngka
Index : 9
Caption : 9
Artikel Populer IlmuKomputer.Com
Copyright © 2005 IlmuKomputer.Com
3
Command Button 10:
(Name) : cmdAngka
Index : 0
Caption : 0
Command Button 11:
(Name) : cmdPlusMinus
Caption : +/-
Command Button 12:
(Name) : cmdKoma
Caption : .
Command Button 13:
(Name) : cmdOperator
Index : 1
Caption : +
Command Button 14:
(Name) : cmdOperator
Index : 2
Caption : -
Command Button 15:
(Name) : cmdOperator
Index : 3
Caption : x
Command Button 16:
(Name) : cmdOperator
Index : 4
Caption : /
Command Button 17:
(Name) : cmdClearEntry
Caption : CE
Command Button 18:
(Name) : cmdClear
Caption : C
Command Button 19:
(Name) : cmdSamaDengan
Caption : =
Berikutnya, Anda tinggal membuat coding dari kalkulator tersebut. Jika Anda mengikuti semua
setting properties seperti diatas, maka codingnya saya contohkan seperti ini:
Option Explicit
Private Hasil As Double
Private Const opNol = 0
Private Const opTambah = 1
Private Const opKurang = 2
Private Const opKali = 3
Artikel Populer IlmuKomputer.Com
Copyright © 2005 IlmuKomputer.Com
4
Private Const opBagi = 4
Private Operator As Integer
Private NilaiBaru As Boolean
' untuk menghapus karakter terakhir
Private Sub Hapus()
Dim txt As String
Dim min_len As Integer
txt = txtDisplay.Text
If Left$(txt, 1) = "-" Then
min_len = 2
Else
min_len = 1
End If
If Len(txt) > min_len Then
txtDisplay.Text = Left$(txt, Len(txt) - 1)
Else
txtDisplay.Text = "0"
End If
End Sub
' hapus angka, hasil terakhir dan operator
Private Sub cmdClear_Click()
cmdClearEntry_Click
Hasil = 0
Operator = opNol
End Sub
' hapus angka
Private Sub cmdClearEntry_Click()
txtDisplay.Text = ""
End Sub
' menambahkan koma (desimal)
Private Sub cmdKoma_Click()
If InStr(txtDisplay.Text, ".") Then
Beep
Else
If NilaiBaru Then
txtDisplay.Text = "."
NilaiBaru = False
Else
txtDisplay.Text = txtDisplay.Text & "."
End If
End If
End Sub
' Menghitung
Private Sub cmdSamaDengan_Click()
Dim HasilBaru As Double
If txtDisplay.Text = "" Then
HasilBaru = 0
Artikel Populer IlmuKomputer.Com
Copyright © 2005 IlmuKomputer.Com
5
Else
HasilBaru = CDbl(txtDisplay.Text)
End If
Select Case Operator
Case opNol
Hasil = HasilBaru
Case opTambah
Hasil = Hasil + HasilBaru
Case opKurang
Hasil = Hasil - HasilBaru
Case opKali
Hasil = Hasil * HasilBaru
Case opBagi
'Tidak bisa dibagi nol
If HasilBaru = 0 Then
MsgBox "Tidak bisa dibagi 0", vbOKOnly + vbCritical, "Kalku ERROR"
Call cmdClear_Click
Else
Hasil = Hasil / HasilBaru
End If
End Select
Operator = opNol
NilaiBaru = True
txtDisplay.Text = Format$(Hasil)
End Sub
' menuliskan angka
Private Sub cmdAngka_Click(Index As Integer)
If NilaiBaru Then
txtDisplay.Text = Format$(Index)
NilaiBaru = False
Else
txtDisplay.Text = _
txtDisplay.Text & Format$(Index)
End If
End Sub
' tombol tambah/kurang/bagi/kali
Private Sub cmdOperator_Click(Index As Integer)
cmdSamaDengan_Click
Operator = Index
NilaiBaru = True
End Sub
' merubah tanda +/-
Private Sub cmdPlusMinus_Click()
If NilaiBaru Then
txtDisplay.Text = "-"
ElseIf Left$(txtDisplay.Text, 1) = "-" Then
txtDisplay.Text = Right$(txtDisplay.Text, 2)
Else
Artikel Populer IlmuKomputer.Com
Copyright © 2005 IlmuKomputer.Com
6
txtDisplay.Text = "-" & txtDisplay.Text
End If
End Sub
' filter untuk angka saja yg dapat diketikkan
Private Sub Form_KeyPress(KeyAscii As Integer)
txtDisplay_KeyPress KeyAscii
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
txtDisplay_KeyUp KeyCode, Shift
End Sub
' supaya kursor tetap di kanan
Private Sub txtDisplay_Change()
txtDisplay.SelStart = Len(txtDisplay.Text)
End Sub
Private Sub txtDisplay_GotFocus()
txtDisplay_Change
End Sub
' untuk mengetikkan angka di keyboard
Private Sub txtDisplay_KeyPress(KeyAscii As Integer)
Dim ch As String
ch = Chr$(KeyAscii)
Select Case ch
Case "0"
cmdAngka_Click 0
Case "1"
cmdAngka_Click 1
Case "2"
cmdAngka_Click 2
Case "3"
cmdAngka_Click 3
Case "4"
cmdAngka_Click 4
Case "5"
cmdAngka_Click 5
Case "6"
cmdAngka_Click 6
Case "7"
cmdAngka_Click 7
Case "8"
cmdAngka_Click 8
Case "9"
cmdAngka_Click 9
Case "*", "x", "X"
cmdOperator_Click opKali
Case "+"
cmdOperator_Click opTambah
Case vbCrLf, vbCr, "="
Artikel Populer IlmuKomputer.Com
Copyright © 2005 IlmuKomputer.Com
7
cmdSamaDengan_Click
Case "-"
cmdOperator_Click opKurang
Case "."
cmdKoma_Click
Case "/"
cmdOperator_Click opBagi
Case "C", "c"
cmdClearEntry_Click
End Select
KeyAscii = 0
End Sub
' untuk ketikan angka di numpad
Private Sub txtDisplay_KeyUp(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyNumpad0
cmdAngka_Click 0
Case vbKeyNumpad1
cmdAngka_Click 1
Case vbKeyNumpad2
cmdAngka_Click 2
Case vbKeyNumpad3
cmdAngka_Click 3
Case vbKeyNumpad4
cmdAngka_Click 4
Case vbKeyNumpad5
cmdAngka_Click 5
Case vbKeyNumpad6
cmdAngka_Click 6
Case vbKeyNumpad7
cmdAngka_Click 7
Case vbKeyNumpad8
cmdAngka_Click 8
Case vbKeyNumpad9
cmdAngka_Click 9
Case vbKeyMultiply
cmdOperator_Click opKali
Case vbKeyAdd
cmdOperator_Click opTambah
Case vbKeySeparator
cmdSamaDengan_Click
Case vbKeySubtract
cmdOperator_Click opKurang
Case vbKeyDivide
cmdOperator_Click opBagi
Case vbKeyDecimal
cmdKoma_Click
Case vbKeyBack, vbKeyDelete
Hapus
End Select
KeyCode = 0
End Sub
Silahkan modifikasi sendiri program Anda. Dapat saja ditambahkan fungsi yang lain seperti akar,
kuadrat atau bahkan trigonometri.
Source code diperoleh dari
www.planetsourcecode.com
Terima kasih & Selamat Mencoba!
Membuat Kalkulator Sederhana dengan Visual Basic 6.0
Posted by KEPOIN IT on Wednesday, January 12, 2011
Code program ini bisa kalian coba buat dengan metode perulangan atau looping. Namun pada code ini saya menggunakan "if bersarang". dan saya mencoba membuat sebuah logika yang sederhana yang semoga saja bisa dimengerti.
Berikut tampilan design dan name dari tiap control nya aplikasinya:
Dan berikut adalah coding yang digunakan :
Dim jam, menit, detik, milisec
Private Sub cmdExit_Click()
Timer1.Enabled = False
Timer2.Enabled = False
End
End Sub
Private Sub cmdreset_Click()
'membuat tampilan menjadi 00:00:00:00
lblSecon.Caption = "00"
lblMinute.Caption = "00"
lblHour.Caption = "00"
'pengaturan nilai variabel
jam = "0"
menit = "0"
detik = "0"
End Sub
Private Sub cmdStart_Click()
Timer1.Enabled = True
Timer2.Enabled = True
cmdreset.Enabled = False
cmdStart.Enabled = False
cmdStop.Enabled = True
jam = lblHour.Caption
menit = lblMinute.Caption
detik = lblSecon.Caption
End Sub
Private Sub cmdStop_Click()
Timer1.Enabled = False
Timer2.Enabled = False
cmdreset.Enabled = True
cmdStart.Enabled = True
cmdStop.Enabled = False
End Sub
Private Sub Form_Load()
'pemberian nilai properti interval timer
' interval untuk satu detik sama dengan kuranglebih 1000
Timer1.Interval = 1000
Timer2.Interval = 500
End Sub
Private Sub Timer1_Timer()
detik = detik + 1
If Val(detik) > 59 Then 'fungsi "val" untuk menggubah karakter menjadi angka atau number
detik = "00"
menit = Val(menit) + 1
If Val(menit) > 59 Then
menit = "00"
jam = Val(jam) + 1
If Val(jam) > 23 Then
jam = "00"
End If
End If
End If
d = Len(detik) 'fungsi "len" berguna untuk mengetahui banyak/panjang karakter
If d = 1 Then
lblSecon.Caption = "0" & detik 'membuat tampilan menjadi "0X"
'tanda "&" berfungsi untuk penggabungan karakter
Else
lblSecon.Caption = detik
End If
m = Len(menit)
If m = 1 Then
lblMinute.Caption = "0" & menit
Else
lblMinute.Caption = menit
End If
j = Len(jam)
If j = 1 Then
lblHour.Caption = "0" & jam
Else
lblHour.Caption = jam
End If
End Sub
Private Sub Timer2_Timer()
'Untuk membuat karakter titik dua ( : ) berkedip
Label1.Visible = Not Label1.Visible
Label2.Visible = Not Label2.Visible
End Sub
Untk pengembangannya bisa dicoba menambahkan fasilitas milisecon nya.





