Dalam konsep OOP (Object Oriented Programming) salah satu syarat dari bahasa pemrograman agar dapat dikelompokan kedalam bahasa pemrogramman yang mendukung OOP yaitu class. Visual C++ 2005 yang merupakan bahasa pemrograman berbasis OOP-pun mendukung class.
Ditutorial ini yang akan saya bahas yaitu mengenai class yang berisi beberapa method dan juga cara membuat sebuah object/instance class.
Setiap kali membuat sebuah class baru maka harus juga dibuat 2 buah file baru dengan nama yang sama, yaitu satu file header dengan ekstensi *.h dan satu file source yang berekstensi *.cpp.
Misalkan ingin dibuat sebuah class dengan nama Class1, maka harus dibuat juga file Class1.h dan Class1.cpp. Dengan menggunakan Visual C++ 2005 hal tersebut bisa diatasi dengan mudah karena akan dapat dibuat secara langsung oleh Visual C+ 2005.
File header berguna untuk menampung prototype dari konstruktor class dan juga prototype dari setiap method yang ada di dalam class tersebut. Sedangkan file source berguna untuk menampung baris perintah atau isi dari constructor dan method tersebut.
Ok buatlah sebuah project baru kemudian designlah form seperti gambar berikut ini :
aturlah properties dari form tersebut seperti dibawah ini :
Nama Kontrol : Form1
Properties : AcceptButton
Nilai : button1
Nama Kontrol : From1
Properties : Text
Nilai : Konversi Suhu
Nama Kontrol : label1
Properties : Text
Nilai : Input Suhu
Nama Kontrol : label2
Properties : Text
Nilai : Pilihan Konversi
Nama Kontrol : label3
Properties : Text
Nilai : Hasil
Nama Kontrol : label4
Properties : Text
Nilai : Celcius
Nama Kontrol : maskedtextbox1
Properties : Mask
Nilai : 00
Nama Kontrol : combobox1
Properties : Items
Nilai : Fahrenheit, Reamur, Kelvin
Nama Kontrol : combobox1
Properties : Text
Nilai : Fahrenheit
Nama Kontrol : button1
Properties : Text
Nilai : Konversi
kemudian tambahkan sebuah class baru dengan mengklik menu dropdown Add New Item yang ada pada toolbar lalu pilih Add Class atau dengan menggunakan kombinasi tombol shorcut SHIFT + ALT + C. Pada jendela yang tampil dibagian kategori pilih Visual C++ > C++ kemudian pada bagian template pilih lalu klik C++ Class.
Lalu klik tombol Add seperti tampil pada gambar dibawah ini :
Akan tampil kotak dialog Generik C++ Class Wizard isilah Class Namenya menjadi classkonversi seperti yang saya bilang diawal ketika kita membuat sebuah class di Visual C++ 2005 maka file header dan file source akan langsung dibuat secara otomatis sesuai dengan nama class seperti tampil pada gambar dibawah ini, dimana nama file header dan file source akan terisi secara otomatis ketika menulis nama class :
Lihat pada Solution Explorer akan tercipta 2 buah file baru. klik ganda file classkonversi.cpp lalu tambahkan listing code berikut ini dibawah code yang telah ada :
double classkonversi::keFahrenheit(double celcius)
{
double fahrenheit;
fahrenheit = (celcius * 1.8) + 32;
return fahrenheit;
}
double classkonversi::keReamur(double celcius)
{
double reamur;
reamur = celcius * 0.8;
return reamur;
}
double classkonversi::keKelvin(double celcius)
{
double kelvin;
kelvin = celcius + 273.15;
return kelvin;
}
setelah itu kliklah pada classkonversi.h lalu tambahkan code berikut ini :
#pragma once
ref class classkonversi
{
public:
classkonversi(void);
double classkonversi::keFahrenheit(double celcius);
double classkonversi::keReamur(double celcius);
double classkonversi::keKelvin(double celcius);
};
setelah itu pindahlah ke tab Form1.h [Design] kemudian tekan F7 pada bagian paling atas kode dibawah #pragma once tambahkan kode berikut ini :
#include "classkonversi.h"supaya class tersebut bisa dikenali diprogram utama. pindah lagi ke tab Form1.h [Design] klik ganda button1 kemudian ketikan code program dibawah ini :
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
if(maskedTextBox1->Text == ""){
maskedTextBox1->Focus();
goto keluar;
}
classkonversi^ konversisuhu = gcnew classkonversi;
double suhu, hasil;
suhu = Convert::ToDouble(maskedTextBox1->Text);
switch(comboBox1->SelectedIndex){
case 0 :
hasil = konversisuhu->keFahrenheit(suhu);
break;
case 1:
hasil = konversisuhu->keReamur(suhu);
break;
case 2:
hasil = konversisuhu->keKelvin(suhu);
break;
default:
MessageBox::Show("Maaf, pilihan tidak ada","Pesan");
goto keluar;
break;
}
label3->Text = "Hasil konversi Celcius ke " + comboBox1->SelectedItem + " = " + hasil.ToString();
keluar:;
}
0 komentar:
Posting Komentar