PEMROGRAMAN
VISUAL
PENYUSUN
TIM LABORAN
2
KATA PENGANTAR
Tim Penyusun
3
DAFTAR ISI
COVER ........................................................................................................................1
LEMBAR PENGESAHAN .........................................................................................2
KATA PENGANTAR .................................................................................................3
DAFTAR ISI ................................................................................................................4
4
Praktikum 1
Konsep Dasar Pemrograman Visual
A. Tujuan
Mahasiswa mampu menjelaskan konsep dasar pemrograman visual
B. Teori
Pada tahun 2000, Microsoft mengumumkan bahasa pemrograman C# (diucapkan
dengan C sharp), yang diciptakan secara khusus untuk platform .NET. C# memiliki
akar dari C, C++, dan Java. Seperti Visual Basic, C# berorientasi objek dan memiliki
akses terhadap pustaka kelas .NETFramework Class Library, yaitu kumpulan yang
kaya akan komponen-komponen terpradefinisi yang memampukan Anda untuk
mengembangkan aplikasi secara cepat. Kedua bahasa, Visual Basic dan C#,
memililiki kapabilitas yang sama dengan Java dan cocok untuk aplikasi desktop,
bergerak (mobile) dan aplikasi berbasis web.
5
blok pembangun terpradefinisi ke tempat tertentu (teknik ini dikenal dengan
pemrograman visual).
Ada beberapa versi Visual Studio. Buku ini didasarkan pada Visual Studio 2012.
Diasumsikan bahwa Anda telah familiar dengan Windows.
Untuk memulai Visual Studio 2012, Anda memilih Start > All Programs > Visual
Studio 2012. Begitu Visual Studio 2012 mulai dieksekusi,Start Page akan
ditampilkan (Gambar 1). Tergantung dari versi Visual Studio yang Anda
gunakan, Start Page bisa tampak berbeda. Start Pagememuat beberapa sumberdaya
berbasis web dan beberapa link yang menghubungkan ke pelbagai sumberdaya pada
Visual Studio 2012. Untuk kembali ke Start Page, Anda bisa memilih View > Start
Page.
6
Beberapa Link pada Start Page
Beberapa link pada Start Page diorganisir ke dalam beberapa bagian,
yaitu Start, Recent, GET STARTED, HOW-TO VIDEOS(STREAMING), dan
LATEST NEWS. Dengan mengklik link ini pada Start Page akan menampilkan
informasi relevan yang berkaitan dengan link tertentu.
Bagian Start memuat beberapa link seperti New Project, Open Project,
dan Connect to Team Foundation Server. Bagian Recent memuat beberapa link
untuk menghubungkan beberapa projek yang telah diciptakan.
Bagian GET STARTED difokuskan untuk penggunaan IDE dalam menciptakan
program visual.
7
2. Hasil dari langkah di atas adalah:
8
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Silahkan Enter untuk melanjutkan");
Console.ReadLine();
}
}
}
9
Dengan demikian kita berhasil membuat C# Console Application
C. Praktikum
Menciptakan Program Sederhana dengan Pemrograman Visual
Pemrograman C# dikesempatan ini akan membahas tentang bagaimana cara
membuat hello word, mungkin hal ini yang sering kita dapatkan pada awal setiap
bahasa pemrograman yang baru. Langkah pertamanya adalah buatkan sebuah projek
dengan Projek Type : Visual C# Console Application seperti gambar di bawah ini:
Jangan lupa rubah nama programnya dengan helloworld atau dengan yang lainnya.
Kemudian Klik Tombok OK.
10
Kemudian Ketikan Kode Dibawah Ini :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World, Ini Program Pertamaku.. :D");
Console.Read();
}
}
}
Tulisan yang dicetak tebal saja yang perlu kita tambahkan, karena yang lainnya
sudah ada ketika kita membuat projek.
Penjelasan Coding :
Console.WriteLine -> adalah perintah untuk menulis di console pada C# sedangkan
di dalamnya adalah string atau kata yang akan kita tampilkan pada layar.
Console.Read(); -> mungkin fungsinya sama getch(); pada C++, berguna untuk
menahan layar agar ketika menjalankan program tidak langsung terclose.
Untuk menjalankan Program Tekan Tombok F5
dan hasilnya adalah sebagai berikut
11
D. Tugas Praktikum
1. Jelaskan arti keyword di bawah ini !
a.using
b.namespace
c.using System
d.class
e.static void Main(string[] args)
2. Buatlah sebuah program konversi hari !
12
Praktikum 2
Pengantar pemrograman C#
A. Tujuan
Mahasiswa mampu menjelaskan struktur pemrograman C#, dan mahir menggunakan
Microsoft Visual Studio .Net
B. Teori
Pengenalan Bahasa C#
C# (dibaca “See-Sharp”) adalah bahasa pemrograman baru yang diciptakan oleh
Microsoft (dikembangkan dibawah kepemimpinan Anders Hejlsberg yang notabene
juga telah menciptakan berbagai macam bahasa pemrograman termasuk Borland
Turbo C++ dan Borland Delphi). Bahasa C# juga telah di standarisasi secara
internasional oleh ECMA.
Seperti halnya bahasa pemrograman yang lain, C# bisa digunakan untuk membangun
berbagai macam jenis aplikasi, seperti aplikasi berbasis windows (desktop) dan
aplikasi berbasis web serta aplikasi berbasis web services.
Editor C#
Notepad
Microsoft Notepad telah banyak digunakan sebagai editor berbasis teks untuk menulis
berbagai macam bahasa pemrograman, termasuk C#. Namun dengan beberapa alasan
berikut, Notepad tidak di rekomendasikan untuk digunakan sebagai editor untuk
membuat aplikasi dengan C#:
File-file C# disimpan dengan ekstension .cs, jika kita tidak hati-hati pada saat
menyimpan file C# di Notepad, misal kita bermaksud menyimpan file dengan nama
test.cs maka tidak tertutup kemungkinan file tersebut akan menjadi test.cs.txt kecuali
kita telah mensetting terlebih dahulu box drop down list pada fungsi Save As menjadi
“All Files”.
13
Notepad tidak dapat menampilkan nomor baris, hal ini akan menyulitkan kita pada
saat kita mendebug dari kemungkinan error yang ada yang memberikan kita informasi
di baris ke berapa error tersebut terjadi.
Notepad tidak dapat melakukan automatic indenting (tab secara otomatis), sehingga
kita harus melakukannya secara manual, hal ini jelas sangat merepotkan terutama jika
kode yang kita buat telah banyak dan kompleks.
Visual Studio 6
Jika anda telah terbiasa menggunakan Visual Studio 6, maka tools tersebut bisa
digunakan untuk membuat aplikasi dengan C#, khususnya dengan menggunakan
editor Microsoft Visual C++.
Trik yang bisa dilakukan adalah dengan mengedit registry key untuk Visual Studio 6
dengan menggunakan Regedit.exe atau editor registry lainnya, edit pada bagian
berikut:
HKEY_CURRENT_USER\Software\Microsoft\DevStudio\6.0\Text
Editor\Tabs/Language Settings\C/C++\FileExtensions
Pada bagian value data, akan mempunyai nilai berupa daftar ekstension yang akan
dikenali secara default oleh tools, seperti di bawah ini:
cpp;cxx;c;h;hxx;hpp;inl;tlh;tli;rc;rc2
14
tambahkan ekstension .cs (tanpa tanda titik) pada bagian value data sehingga nilainya
akan menjadi seperti berikut ini:
cpp;cxx;c;h;hxx;hpp;inl;tlh;tli;rc;rc2;cs
Sekarang, jika kita membuka file yang berekstension .cs dengan menggunakan
Microsoft Visual C++, maka tools tersebut akan mengenali file tersebut sebagai salah
satu jenis file yang di support secara default.
Selanjutnya, kita perlu untuk mendeklarasikan kata-kata kunci C# pada Visual Studio
kita, yang bisa dilakukan dengan mengedit file usertype.dat yang biasanya di simpan
satu direktori dengan file msdev.exe. Untuk melihat perubahannya, maka kita perlu
merestart Visual Studio kita terlebih dahulu.
Dengan IntelliSense, jika kita mengetikan nama sebuah namespace atau nama Class,
maka anggota dari namespace atau Class itu akan secara otomatis di munculkan
sehingga kita tidak usah mengingat anggota dari semua I atau semua Class yang kita
gunakan. IntelliSense, juga akan menampilkan semua argumen dan jenis typenya
ketika kita mengetikan nama dari sebuah metode. Visual Studio 6 juga telah memiliki
kemampuan ini, hanya saja Visual Studio 6 tidak mensupport jenis type dan Class-
Class yang termasuk di dalam lingkungan Framework .NET.
Fitur bantuan yang dinamis (dynamic help) merupakan fitur yang baru yang ada di
dalam “keluarga” editor Visual Studio. Ketika kita mengetikan sebuah code pada
editor, sebuah jendela yang terpisah akan menampilkan topik-topik bantuan dan
15
penjelasan yang berhubungan dengan kata-kata tempat di mana kita menempatkan
cursor. Misalnya, ketika kita mengetikan kata namespace, maka di jendela yang
terpisah tadi akan dimunculkan topik-topik yang berhubungan dengan kata kunci
namespace. Hal ini tentu akan sangat membantu kita pada saat pembuatan program
untuk dapat lebih memahami dan mengerti tentang kata-kata / kode yang kita tulis.
Editor Lainnya
Selain editor-editor yang telah disebutkan di atas, masih banyak beberapa editor lain
yang bisa digunakan untuk membuat aplikasi dengan C#, seperti Visual SlickEdit
dari MicroEdge, WebMatrikx untuk aplikasi C# berbasis web, editor text seperti
UltraEdit, Macromedia Homesite, dll. Editor-editor tersebut tidak akan dibahas di
buku ini, namun intinya, kita bisa menggunakan editor-editor tersebut dengan
kelebihan dan kekurangannya masing-masing.
Hello World#
Asumsikan bahwa kita telah memilih editor untuk membuat aplikasi C#. Selanjutnya,
kita aka mencoba membuat aplikasi C# yang sederhana. Untuk pertama kali, kita
akan mencoba membuat aplikasi Hello World sederhana dengan menggunakan
Notepad. Buka notepad dan tulis kode dibawah ini, kemudian simpan dengan nama
helloworld.cs:
class HelloWorld
{
// Bagian utama program C#
public static void Main()
{
System.Console.WriteLine("Hello, World");
}
}
Pada bagian ini, kita tidak akan membahas secara rinci baris per baris dari kode
program kita di atas, di sini hanya akan diperlihatkan bagaimana struktur penulisan
aplikasi C#, melakukan kompilasi, dan kemudian menjalankannya. Pembahasan yang
lebih rinci tentang syntax pemrograman, arti masing-masing kata kunci (keywords)
akan dibahas pada bagian selanjutnya.
16
Struktur Penulisan Kode C#
Bagian utama struktur penulisan kode C#
Program helloworld.cs di atas merupakan struktur kode program C# yang paling
sederhana.
Kode program diawali dengan mendeklarasikan nama Class atau namespace
(penjelasan yang lebih rinci tentang Class namespace, akan di bahas pada bab
selanjutnya).
class HelloWorld
Kemudian seluruh aplikasi dibuka dengan tanda “{“ dan pada akhir kode ditutup
dengan tanda “}”.
class HelloWorld
{
}
Aplikasi C# dibangun oleh satu atau beberapa fungsi yang diletakan di dalam sebuah
Class. Nama suatu fungsi pada C# harus diawali dengan huruf, atau garis bawah “_”
yang kemudian bisa diikuti oleh huruf, angka atau garis bawah. Pada bagian akhir
nama fungsi digunakan tanda kurung buka dan kurung tutup “()”. Penamaan fungsi
tidak boleh mengandung spasi. Awal dan akhir suatu fungsi di mulai dengan tanda
“{“ dan diakhiri dengan tanda “}”. Berikut contoh penamaan fungsi yang diletakan di
dalam Class:
class HelloWorld
{
NamaFungsi()
{
}
}
Atau
class HelloWorld
{
_NamaFungsi()
{
}
}
Nama fungsi utama yang biasa digunakan pada aplikasi C# adalah Main. Setiap
fungsi memiliki sifat fungsi, seperti public dan static. Selain itu, untuk menandakan
17
apakah itu blok fungsi atau bukan, sebelum nama fungsi digunakan void, berikut
contoh lengkapnya:
class HelloWorld
{
public static void main()
{
}
}
Penjelasan tentang public, static dan void itu sendiri akan dibahas lebih rinci lagi di
bab selanjutnya.
Di dalam sebuah fungsi, berisikan sekumpulan perintah-perintah, dimana perintah
satu dengan lainnya akan dipisahkan atau diakhiri dengan tanda “;”. Pada contoh
helloworld.cs sebelumnya, perintah yang digunakan adalah untuk mengeluarkan
output berupa tulisan “Hello, World” yang akan tampil pada mode console (mode dos
prompt), seperti kode berikut ini:
class HelloWorld
{
//Bagian utama program C#
public static void main()
{
System.Console.WriteLine(“Hello, World”);
}
}
Penjelasan tentang System, Console, WriteLine dan kata-kata kunci lainnya akan
dibahas di bab selanjutnya. Pada bagian ini, Anda hanya dikenalkan pada tata cara
struktur penulisan kode program pada aplikasi C#.
18
Cara lain adalah dengan diawali tanda “/*” dan diakhiri dengan tanda “*/”. Tanda ini
biasanya digunakan untuk sebuah komentar yang panjang, seperti contoh berikut :
Escape Sequences
Escape Sequences adalah karakter-karakter khusus yang tidak akan ditampilkan.
Contohnya, ada karakter yang digunakan sebagai tanda akhir dari suatu baris yang
memerintahkan program untuk melanjutkan ke baris berikutnya. Cara penulisannya
diawali dengan tanda \ diikuti dengan karakter khusus (dalam contoh ini adalah “n”)
sehingga penulisannya menjadi \n.
C. Praktikum
Menulis Aplikasi dengan Notepad
1. Buka file baru pada aplikasi Notepad. Lalu simpanlah dengan nama HaloDunia.cs
2. Ketiklah kode berikut ini
19
Latihan 1.1
using System;
class HaloCsharp
{
// Bagian utama program C#
public static void Main( string [] args)
{
System.Console.WriteLine("Ini adalah program pertamaku dengan C#");
}
}
3. Untuk proses kompilasi, kamu perlu buka “Visual Studio 2008 Command
Prompt”. Kemudian atur path sesuai dengan tempat penyimpanan HaloDunia.cs.
Perintah yang digunakan untuk kompilasi:
csc HaaloCsharp.cs
Perintah tersebut akan mengkompilasi program HaloDunia.cs menjadi
HaloCsharp.exe.
4. Setelah dikompilasi, jalankan/eksekusi program tersebut dengan perintah :
HaloCsharp atau
HaloCsharp.exe
20
2. Kemudian tuliskan source code-nya sebagai berikut
Latihan 1.2
using System;
using System.Collections.Generic;
using System.Text;
namespace belajar {
class Program {
static void Main( string [] args) {
Console .WriteLine( "Selamat belajar C#" );
}
}
}
3. Kemudian jalankan dengan menekan tombol Ctrl + F5 (untuk run tanpa maka
akan ditampilkan hasilnya sebagai berikut.
Penjelasan perbagian dari Latihan1.1 dan 1.2 di atas adalah sebagai berikut:
1. Tag // digunakan sebagai komentar, pada C# digunakan tag // (jika hanya satu
baris saja) atau diapit tag /* */ (jika komentarnya lebih dari satu baris). Kode atau
keterangan di dalam tag komentar tidak akan dieksekusi oleh compiler.
2. Keyword using digunakan untuk memberitahu compiler class yang digunakan
pada aplikasi. Salah satu keunggulan dari C# adalah tersedianya predefined class
yang dapat langsung digunakan dalam aplikasi.
3. Keyword namespace digunakan untuk mendeklarasikan ruang lingkup dari class
yang kamu buat. Class di dalam namespace dapat dipanggil dengan
mencantumkan nama namespace-nya terlebih dahulu .
4. Keyword using System; pada baris pertama mempunyai arti kamu dapat
menggunakan class-class yang ada pada namespace System.
5. Keyword class digunakan untuk mendeklarasikan class dengan nama Program.
6. Deklarasi static void Main(string[] args) adalah method utama yang dijalankan
pada class Program .
21
7. Sintaks Console.WriteLine digunakan untuk menampilkan output ke layar
console.
D. Tugas Praktikum
1. Buatlah program untuk menginputkan biodata terdiri dari nama lengkap, nama
panggilan, npm, umur, tempat lahir,telepon, dan alamat.
22
Praktikum 3
Variabel dan Tipe Data
A. Tujuan
Mahasiswa mampu menguraikan jenis tipe data dan menggunakannya untuk
merancang aplikasi console
B. Teori
Variabel
Variable adalah nama dari suatu lokasi di memori yang digunakan untuk menyimpan
data sementara. Variable diberi nama tertentu yang menunjukkan domain yang
diwakilinya. Pada pemrograman visual nama variabel komponen/kontrol yaitu pada
properti (name). Dalam memberikan nama variable ada beberapa ketentuan yang
harus diperhatikan yaitu:
a. Panjang karakter nama variable tidak dibatasi
b. Nama variable harus diawali dengan huruf, tanda garis bawah(underscore_) atau
tanda $. Selanjutnya dapat diikuti oleh karakter lain selain operator(*,,+), dengan
kata lain variable dapat diawali dengan karakter khusus kecuali operator.
c. Tidak diperbolehkan menggunakan kata kunci (keyword) yang digunakan pada
C# (contoh: if, for, while, dll)
d. Bersifat case sensitive (membedakan huruf besar dan huruf kecil)
e. Penulisan variable tidak boleh menggunakan spasi
f. Syntax Penulisan variable harus diawali dengan tipe data terlebih dahulu karena
data yang tersimpan dalam variable harus memiliki tipe tertentu sebelum
digunakan dalam aplikasi.
Tipe data
Tipe data merupakan jenis data yang digunakan pada program untuk dioperasikan.
Pada C# terdapat dua jenis tipe data, yaitu :
a. Tipe data dasar misalkan integer, float, byte, dan sebagainya.
b. Tipe data reference misalkan object dan delegates.
Referenced type didefinisikan dengan menggunakan class. C# mempunyai 13 tipe
data dasar yang ditunjukan pada table dibawah ini
23
Tipe-tipe data yang ada diatas disebut dengan simple types
C. Praktikum
Berikut adalah sebuah program yang berfungsi untuk menghitung umur dalam hari,
jam dan menit. Program ini akan meminta anda untuk memasukkan data berupa
tanggal, bulan dan tahun kelahiran anda. Kemudian akan melakukan perhitungan
untuk mendapatkan hari, jam dan menit umur anda sampai hari ini.
using System;
try
{
Console.Out.Write("Masukkan Tanggal: ");
day = Convert.ToInt32(Console.In.ReadLine());
24
DateTime birthDate = new DateTime(year, month, day);
DateTime today = DateTime.Now;
Langkah pertama dalam program ini adalah mendeklarasikan variabel day, month
dan
year yang bertipe int. Kemuadian program akan menampilkan kalimat agar anda
memasukan data tanggal, bulan dan tahun kelahiran anda.
Setelah mendapatkan semua informasi yang dibutuhkan kita akan membuat dua buah
System.DateTime, yang pertama merupakan object yang mewakili tanggal kelahiran
anda dan yang kedua merupakan object yang mewakili waktu saat ini.
Pada langkah terakhir hasil kalkulasi akan ditampilkan dengan menggunakan object
bertipe Console.Out.WriteLine().
25
Menghitung Umur
====================
Masukkan Tanggal: 30
Masukkan Bulan : 12
Masukkan Tahun : 1976
Saat ini umur anda adalah: 10150 hari, 20 jam, 14 minutes.
D. Tugas Praktikum
1. Buatlah program konversi waktu dari detik ke jam, menit, detik!
2. Buatlah program konversi suhu dari Celcius (C) ke Fahrenheit (F), Reamur (R),
dan Kelvin (K). Suhu Celsius di masukkan melalui keyboard saat program
dieksekusi !
F = C * 9/5 +32
K=C+273,15
R= 4/5*C
26
Praktikum 4
Operator C#
A. Tujuan
Mahasiswa mampu menguraikan klasifikasi operator di dalam C# dan
menggunakannya dalam studi kasus program
B. Teori
Operator digunakan untuk mengombinasikan suatu data dengan data lain. Biasanya
operator digunakan pada data yang tipenya dapat dikalkulasi seperti data yang bersifat
integral atau floating point. Pengkalkulasian data melalui operator ada berbagai
macam cara tergantung tipe dari data tersebut. Berikut ini adalah jenis-jenis operator:
Operator Aritmatika
Operator aritmatika digunakan untuk perhitungan matematis seperti dalam
penambahan, pengurangan, perkalian, dan pembagian
Simbol Keterangan
+ Operator penjumlahan
- Operator pengurangan
* Operator perkalian
/ Operator pembagian
% Operator sisa bagi (modulus)
Operator Relasi
Operator relasi digunakan untuk membandingkan dua buah niai, dan operator relasi
akan memberikan nilai benar atau salah (true,false).
Simbol Keterangan
< Kurang dari
<= Kurang dari sama dengan
> Lebih dari
>= Lebih dari sama dengan
== Sama dengan
Operator Logika
Operator logika digunakan untuk menggabungkan dua buah ungkapan kondisi
menjadi sebuah ungkapan kondisi. Oleh karena itu biasanya operator logika
digunakan bersamaan dengan percabangan (IF).
27
Simbol Keterangan
& AND
| OR
^ XOR (Exclusive OR)
&& Short-circuit AND
|| Short-circuit OR
! Not
C. Praktikum
Praktikum 1
Buatlah sebuah project C# baru dengan nama belajar_operator
Buatlah sebuah kode file dengan nama main_operator.cs dengan isi script sebagai
berikut :
/* Belajar pemrograman c# */
using System;
class main_operator
{
static void Main()
{
int x;
double y;
x = 10 / 3;
y = 10.0 / 3.0;
Jalankan program anda dengan cara klik Debug > Start Debuging atau
tekan F5 pada keyboard.
Keluaran bertipe integer nilai desimalnya tidak muncul atau terpotong, sedangkan
double muncul.
Praktikum 2
Buatlah sebuah project C# baru dengan nama belajar_relasional
Buatlah sebuah kode file dengan nama main_relasional.cs dengan isi script sebagai
berikut:
28
/* Belajar pemrograman c# dengan */
using System;
class main_relasional
{
static void Main()
{
int i, j;
bool x;
i = 4;
j = 9;
Console.WriteLine("i="+i);
Console.WriteLine("j="+j);
x = i == j;
Console.WriteLine("i == j menghasilkan "+ x);
x = i != j;
Console.WriteLine("i != j menghasilkan " + x);
x = i > j;
Console.WriteLine("i > j menghasilkan " + x);
x = i < j;
Console.WriteLine("i < j menghasilkan " + x);
x = i >= j;
Console.WriteLine("i >= j menghasilkan " + x);
x = i <= j;
Console.WriteLine("i <= j menghasilkan " + x);
Console.ReadKey();
}
}
Jalankan program anda dengan cara klik Debug > Start Debuging atau tekan F5 pada
keyboard.
29
i > j menghasilkan false karena 4 tidak lebih besar dari 9
i < j menghasilkan true karena 4 lebih kecil dari 9
i >= j menghasilkan false karena 4 tidak lebih besar atau sama dengan 9
i <= j menghasilkan true karena 4 lebih kecil atau sama dengan 9
D. Tugas Praktikum
Buatlah program kalkulator sederhana yang dapat melakukan operasi penambahan,
pengurangan, perkalian, pembagian, pemangkatan dan modulus
30
Praktikum 5
GUI
A. Tujuan
Mahasiswa mahir dalam menggunakan tools dan komponen Windows Form di
Toolbox
B. Teori
Menggunakan IDE dan Menciptakan Projek Baru
Untuk memulai pemrograman dalam Visual C#, Anda harus menciptakan sebuah
projek baru atau membuka projek yang sudah ada. Projek merupakan sekelompok
file yang berelasi dan citra (jika ada) yang membangun sebuah program. Selanjutnya,
Anda memilih File > New Project > Visual C# dan akan tampil dialog New
Project seperti yang ditampilkan pada Gambar 3.
31
Applications, WPF Application, dan lainnya. Pada bab ini, akan dibangun
sebuah Windows Forms Application. Aplikasi semacam itu dieksekusi pada sistem
operasi Windows (seperti Windows 7) dan secara umum memiliki GUI.
Kotak persegi pada area Design diberi judul Form1 yang merepresentasikan jendela
aplikasi utama yang akan Anda ciptakan. Visual C# dapat memiliki
banyak Form (jendela). Namun, kebanyakan aplikasi yang Anda ciptakan pada buku
ini hanya akan menggunakan satu Form. Anda akan belajar bagaimana
memanipulasi Form dengan menambahkan GUI controls. Pada contoh ini, Anda
akan menambahkan sebuah Label dan sebuahPictureBox. Sebuah Label umumnya
memuat teks deskriptif (misalnya, “Selamat Datang ke Visual C#!”), dan
sebuah PictureBox menampilkan citra, seperti logo tertentu. Visual C# banyak
memiliki kendali terpradefinisi dan komponen lainnya yang dapat Anda pakai untuk
membangun program Anda.
Pada bab ini, Anda akan bekerja dengan kendali-kendali yang sudah ada dari pustaka
kelas .NET. Setelah Anda menempatkan beberapa kendali pada Form, Anda akan
mampu memodifikasi propertinya. Sebagai contoh, Gambar 5 menunjukkan di mana
32
judul Form dapat dimodifikasi dan Gambar 6 menampilkan sebuah dialog dimana di
dalamnya properti font dapat dimodifikasi.
Gambar 5. Kendali Textbox untuk memodifikasi sebuah properti pada IDE Visual Studio
33
GUI dimana pengguna dapat mengklik tombol mouse untuk memilih tipe template,
kemudian memasukkan nama projek dari papanketik
Anda bisa melakukan pengaturan pada toolbar. Anda memilih View >
Toolbars (Gambar 1.8). Setiap toolbar yang Anda pilih akan ditampilkan dengan
semua toolbar lain di sisi atas jendela Visual Studio. Untuk mengeksekusi perintah
lewat sebuah toolbar, Anda tinggal mengklik ikon terkait.
Toolbox
Toolbox (View > Toolbox) memuat ikon-ikon yang merepresentasikan kendali-
kendali yang digunakan untuk memanipulasi Form (Gambar 9). Dengan
pemrograman visual, Anda dapat melakukan “drag and drop” pada Form dan IDE
akan menuliskan kode yang menciptakan kendali untuk Anda. Hal ini lebih cepat dan
lebih sederhana daripada harus menuliskan kode itu sendiri. Sama seperti Anda yang
34
tidak perlu mengetahui bagaimana menciptakan mesin ketika mengendarai sebuah
mobil, Anda juga tidak perlu mengetahui bagaimana membangun kendali pada IDE.
Gambar 9. Jendela Toolbox yang menampilkan kendali-kendali untuk grup Common Controls
Jendela Properties
Untuk menampilkan jendela Properties, Anda bisa memilih View > Other
Windows > Properties Window. Jendela Properties menampilkan beberapa properti
untuk Form yang sekarang sedang dikerjakan (Gambar 10). Jendela ini menetapkan
informasi seputar Form atau kendali, seperti ukuran, warna, dan posisinya.
Setiap Form atau kendali memiliki sederet properti sendiri.
35
Gambar 1.10 menampilkan jendela Properties untuk Form1. Kolom kiri memuat
nama-nama dari properti Form dan kolom kanan menampilkan nilai terkini dari tiap
properti. Anda dapat mengurutkan properti secara alfabetik (dengan mengklik
ikon Alphabetical) atau secara kategorik (dengan mengklik ikon Categorized).
Semua properti dapat diurutkan secara alfabetik dari A sampai Z atau Z sampai A,
dan pengurutan secara kategorik atas grup-grup properti dilakukan sesuai dengan
kegunaannya (yaitu, Accessibility, Appearance, Behavior, Design, dan lainnya).
Bergantung dari ukuran jendela Properties, beberapa properti akan tersembunyi dari
pandangan pada layar. Pengguna dapat menggesernya dengan menggeser kotak
penggeser (scrollbox) ke atas atau ke bawah di dalam batang penggeser (scrollbar),
atau dengan mengklik tanda panah di sisi atas dan bawah dari batang penggeser.
36
Gambar 10. Jendela Properties
C. Praktikum
Menciptakan Program Sederhana dengan Pemrograman Visual
Pemrograman visual berguna untuk membangun program-program yang memerlukan
interaksi dengan pengguna. Untuk menciptakan, menyimpan, menjalankan, dan
menghentikan program pertama ini, lakukan beberapa langkah berikut:
1. Tutup projek yang dibuka. Jika sebuah projek telah terbuka, Anda bisa
menutupnya dengan menyeleksi File > Close Solution.
2. Ciptakan projek baru. Untuk menciptakan sebuah aplikasi Windows Forms baru
untuk program, Anda bisa memilih File > New Project untuk menampilkan
dialog New Project (Gambar 11). Pilih Windows Forms Application. Berikan
nama projek ProgramSederhana (misalnya) dan klik OK.
3. Simpan projek. Anda harus menetapkan direktori di mana projek akan disimpan.
Untuk menetapkan direktori pada Visual Studio, Anda bisa memilih File > Save
All.
4. Tetapkan teks pada batang judul Form. Teks pada batang judul Form ditentukan
oleh properti Text (Gambar 12). Jika jendela Properties tidak terbuka, klik
ikon properties pada toolbar atau pilih View > Other Windows > Properties
37
Window. Pada kotak teks di sisi kanan properti Text, ketikkan Program
Sederhana dan tekan kunci ENTER. Batang judul Form akan terperbarui secara
otomatis. Lihat Gambar 13.
38
Gambar 13. Pembaruan teks pada batang judul
5. Ubah ukuran Form. Anda bisa mengklik dan menggeret salah satu pengatur
ukuran pada Form (kotak putih kecil yang muncul di sekelilingForm, seperti
yang ditunjukkan pada Gambar 14). Dengan menggunakan mouse, Anda bisa
memilih pengatur ukuran kanan-bawah dan menggeretnya ke bawah dan ke
kanan sehingga membuat Form menjadi lebih besar.
39
Gambar 15 Mengubah properti BackColor pada Form
7. Tambahkan kendali Label pada Form. Jika Toolbox tidak terbuka, Anda bisa
memilih View > Toolbox untuk menampilkan sederet kendali yang akan Anda
gunakan untuk menciptakan program. Untuk tipe program yang akan diciptakan
di sini, Anda akan menggunakan kendali-kendali yang ditempatkan pada grup All
Windows Forms atau pada grup Common Controls. Selanjutnya, klik ganda
(dua kali) pada kendaliLabel pada Toolbox. Tindakan ini akan menyebabkan
sebuah Label muncul di pojok kiri-atas pada Form. Lihat Gambar 17. Anda juga
dapat menggeret kendali dari Toolbox ke dalam Form. Hal itu dapat
mempermudah Anda memposisikannya di manapun yang Anda
inginkan.Label menampilkan teks label1 secara default. Warna latar Label sama
dengan warna latar Form. Ketika sebuah kendali ditambahkan padaForm,
properti BackColor dari kendali tersebut ditetapkan sama dengan
40
properti BackColor dari Form. Anda dapat mengubahnya dengan mengatur
properti BackColor dari kendali tersebut.
41
Gambar 19 Jendela Properties yang menampilkan properti Font dari Label
Ketika tombol ellipsis tersebut diklik, sebuah dialog Font akan tampil (Gambar
20). Anda dapat memilih nama font, gaya font (Light,Regular, Oblique, Bold,
dan Bold Oblique) dan ukuran font pada dialog ini. Teks Sample menunjukkan
pengaturan font yang diseleksi. Anda bisa memilih Segoe UI, yang merupakan font
yang direkomendasikan Microsoft untuk antarmuka pengguna. Jika teks
pada Label tidak cukup untuk satu baris, maka akan dirangkum pada baris berikutnya.
10. Tambahkan sebuah PictureBox pada Form. Kendali PictureBox dipakai untuk
menampilkan citra. Proses yang terlibat pada langkah ini sama dengan pada
Langkah 7. Anda perlu menggeretnya ke Form. Lihat Gambar 21. Anda
menempatkan PictureBox tersebut di bawah Label.
42
Gambar 21 Menyisipkan dan menyejajarkan sebuah PictureBox
11. Sisipkan citra. Anda bisa mengklik PictureBox untuk menampilkan properti-
propertinya pada jendela Properties (Gambar 1.22).
Gambar 23 Dialog Select Resource untuk memilih sebuah citra untuk PictureBox
43
Gambar 24 Dialog Select Resource yang menampilkan citra yang akan digunakan
Untuk menskalakan citra sesuai dengan ukuran PictureBox, Anda bisa mengubah
properti SizeMode menjadi StretchImage (Gambar 25). Anda bisa mengatur-ulang
ukuran PicturBox, membuatnya lebih besar (Gambar 26).
12. Jalankan projek. Anda bisa memilih Debug > Start Debugging untuk
menjalankan projek, seperti diperlihatkan pada Gambar 27. Hasil program yang
dijalankan ditampilkan pada Gambar 28.
44
Gambar 27 Menjalankan projek
D. Tugas Praktikum
Membuat sebuah Form di lengkapi dengan tombol button serta event pesan dalam
tombol button tersebut
Tampilan Program :
45
jika klik no
46
Praktikum 6
Struktur Pemilihan dan Perulangan
A. Tujuan
Mahasiswa mampu menguasai pengunaan struktur pemilihan dan perulangan untuk
membangun aplikasi GUI
B. Teori
1. Struktur Pemilihan
If else pada C#
Terdapat beberapa cara untuk menggunakan kondisi if else. Salah satunya adalah if
else satu baris yang telah ditunjukkan pada bagian tipe data. Secara umum, struktur if
else adalah sebagai berikut:
if (kondisi1) {
//Perintah ketika kondisi 1 terpenuhi
} else if (kondisi2) {
//Perintah ketika kondisi 2 terpenuhi
} else if (kondisi3) {
//Perintah ketika kondisi 3 terpenuhi
} else {
//Ketika semua kondisi lain tak terpenuhi, lakukan ini
}
Kondisi-kondisi di atas adalah variabel atau pernyataan boolean. Dan blok else if dan
else bersifat opsional.
Perintah switch adalah salah satu struktur kode yang pernah saya gunakan. Hampir
selalu, struktur if dapat menggantikan struktur switch. Bentuk perintah switch pada
C# adalah:
switch (variabelUji) {
case [literal 1]:
//Blok kode 1
break;
case [literal 2]:
//Blok kode 2
break;
case [literal 3]:
//Blok kode 3
break;
47
default:
//Jika yang lain tidak terpenuhi
break;
}
2. Struktur Perulangan
while (kondisi) {
[perintah]
}
Ketika suatu program sampai pada suatu perulangan while, pernyataan di dalam
perulangan tersebut akan dijalankan terus menerus selama cond bernilai benar. Ketika
menggunakan perulangan while, pada umumnya perlu memperhatikan tiga hal:
permulaan, kondisi dan iterasi. Sehingga strukturnya menjadi:
[permulaan]
while (kondisi) {
[perintah]
[iterasi]
}
do {
[perintah]
} while (kondisi);
Satu satunya perbedaan antara perulangan do while dan perulangan while adalah
ketika kondisi awal bernilai salah, yang mana akan mengakibatkan perulangan while
dilewatkan sedangkan perulangan do while dijalankan hanya satu kali.
Syntax perulangan for jauh lebih sederhana dibandingkan dengan perulangan while.
Syntax perulangan for adalah:
48
Blok kode { } bisa juga digantikan dengan satu perintah tunggal sehingga menjadi
syntax perulangan for satu baris:
Bagian pendahuluan akan dijalankan pertama kali ketika perintah for dijumpai.
Setelah pendahuluan dan setiap kali perulangan kembali ke awal, kondisi akan diuji.
Perintah di dalam blok perulangan for akan dijalankan jika kondisi bernilai benar, dan
perulangan akan berakhir ketika kondisi bernilai salah. Iterasi adalah kode yang akan
dijalankan setiap kali perulangan berhasil berputar satu kali.
C. Praktikum
Praktikum 1: if sederhana pada C#
Sebagai contoh, buat suatu aplikasi windows forms dan desain Form menyerupai
gambar di bawah:
49
Pada contoh di atas, kita mengecek apakah username koosong. Jika username kosong,
kita meminta user untuk menginput username. Terdapat beberapa hal baru pada kode
di atas:
Double slash (garis miring ganda) menyatakan bahwa semua teks di sebelah
kanan double slash adalah komentar dan tidak akan dikompilasi.
Setiap string memiliki method .Trim() yang membuang semua spasi di awal
dan akhir string.
string.Empty adalah sinonim dari "" yang merupakan string kosong.
50
Coba kompilasi dan jalankan program (tekan F5) dan ketikkan beberapa teks ke
dalam username dan klik Simpan. Cobalah nama-nama berikut:
Salah satu kesalahan umum pemrograman adalah salah meletakkan kode. Sebagai
contoh, seorang programmer pemula dapat dengan mudah terjebak membuat kode
seperti berikut:
51
MessageBox.Show("Panjang username harus di antara 5 dan 25 karakter");
} else if (user.ToLower() == "fandi") {
MessageBox.Show("Username sudah terpakai");
} else {
if (pass.Trim() == "") {
MessageBox.Show("Harap isi password");
} else if (pass.Length < 6) {
MessageBox.Show("Password paling tidak harus 6 karakter");
} else if (pass != konfirmasi) {
MessageBox.Show("Konfirmasi password tidak sesuai");
} else {
/* Kode untuk menyimpan data pendaftaran
* Akan dijelaskan pada saat belajar database
* Untuk saat ini kita akan membohongi user
* Dengan mengatakan "Pendaftaran berhasil"
*/
MessageBox.Show("Pendaftaran berhasil");
}
}
}
Coba jalankan kode dan klik tombol simpan dengan berbagai kondisi. Password if di
dalam blok else ditujukan untuk demonstrasi if bersarang. Meskipun hal ini dapat
dilakukan, akan lebih baik untuk menghindari if bersarang karena if bersarang dapat
dengan mudah membingungkan kita.
Now select all the codes inside the btnSave_Click function and press CTRL + K, C to
comment all those codes and type in some new codes (to uncomment, select and press
CTRL + K. U):
52
// MessageBox.Show("Pendaftaran berhasil");
// }
//}
//Validasi username
if (user.Trim() == "") { MessageBox.Show("Harap isi username"); return; }
if (user.Length < 5 || user.Length > 25) { MessageBox.Show("Panjang username harus
if (user.ToLower() == "fandi") { MessageBox.Show("Username sudah terpakai"); return
//Validasi password
if (pass.Trim() == "") { MessageBox.Show("Harap isi password"); return; }
if (pass.Length < 6) { MessageBox.Show("Password paling tidak harus 6 karakter"); r
if (pass != konfirmasi) { MessageBox.Show("Konfirmasi password tidak sesuai"); retu
//Validasi umur
int umur;
bool umurBenar = Int32.TryParse(txtUmur.Text, out umur);
if (!umurBenar) { MessageBox.Show("Harap input umur yang benar"); return; }
//Registrasi
string tipeRegistrasi;
if (umur < 18) tipeRegistrasi = "Anak anak"; else tipeRegistrasi = "Dewasa";
MessageBox.Show("Pendaftaran " + tipeRegistrasi + " berhasil");
}
Saya memperkenalkan perintah return pada kode di atas. Perintah return akan
mengakhiri eksekusi suatu fungsi, sehingga semua baris setelah perintah return tidak
akan dijalankan. Menurut pendapat saya, kode di atas jauh lebih rapi dibandingkan
kode if bersarang
Perhatikan juga bahwa pada bagian registrasi, terdapat perintah if satu baris. Pada
perintah if else sederhana, lebih baik menggunakan bentuk ini agar dapat lebih mudah
membaca dan memahami kode kita sendiri. Jika kita menggunakan if berbentuk blok-
blok seperti sebelumnya, kodenya akan tampak seperti:
53
No. Nama Objek Nama Properties Nilai
1. Form (Name) frPilih
Text Pemilihan Gambar
2 PictureBox (1) (Name) pbPemain
SizeMode StretchImage
Size 315, 234
3. PictureBox (2) (Name) pbIbra
SizeMode StretchImage
Size 40, 40
4. PictureBox (3) (Name) pbInza
SizeMode StretchImage
Size 40, 40
5. PictureBox (4) (Name) pbRonal
SizeMode StretchImage
Size 40, 40
6. ComboBox (Name) cbPemain
Items Z. Ibrahimovic
F. Inzaghi
C. Ronaldo
namespace ComboBox
{
public partial class FrPilih : Form
{
public Form1()
{ InitializeComponent(); }
54
{
switch (cbPemain.Text)
{
case "Z. Ibrahimovic" :
pbPemain.Image = pbIbra.Image;
break;
case "F. Inzaghi" :
pbPemain.Image = pbInza.Image;
break;
case "C. Ronaldo" :
pbPemain.Image = pbRonal.Image;
break;
default :
pbPemain.Image = null;
break;
}
}
}
}
Tambahkan kontrol ke form seperti pada gambar diatas dan atur propertinya seperti tabel
berikut:
Object Properties Nilai
Form1 Name Form1
Text Perulangan FOR
Label1 Text Tgl/Bln/Thn
ComboBox1 Name CmbTgl
ComboBox2 Name CmbBln
ComboBox3 Name CmbThn
Klik ganda pada Form1, kemudian ketikkan kode program berikut ini :
For tgl = 1 To 31
cmbTgl.Items.Add(tgl)
Next tgl
For bln = 1 To 12
cmbBln.Items.Add(bln)
55
Next bln
Jalankan aplikasi dengan menekan tombol F5 (di keyboard), atau melalui ikon Start
Debugging di toolbar, atau melalui menu Debug > Start Debuging.
Simpan aplikasi Anda.
3. Tambahkan kontrol ke form seperti pada gambar diatas dan atur propertinya
seperti tabel berikut:
4. Klik ganda pada Proses, kemudian ketikkan kode program berikut ini :
Dim angka AsInteger
56
ListBox1.Items.Clear()
angka = 1
While angka <= Val(TxtBatas.Text)
ListBox1.Items.Add(angka)
angka = angka + 1
EndWhile
5. Jalankan aplikasi dengan menekan tombol F5 (di keyboard), atau melalui ikon
Start Debugging di toolbar, atau melalui menu Debug > Start Debuging.
6. Simpan aplikasi Anda.
3. Tambahkan kontrol ke form seperti pada gambar diatas dan atur propertinya
seperti tabel berikut:
4. Klik ganda pada Proses, kemudian ketikkan kode program berikut ini :
Dim X%
X = TxtAngka.Text
Do
X = X Mod 2
If X = 0 Then
MsgBox("Bilangan Genap")
ExitDo
ElseIf X = 1 Then
MsgBox("Bilangan Ganjil")
ExitDo
EndIf
57
LoopWhileNot X
5. Jalankan aplikasi dengan menekan tombol F5 (di keyboard), atau melalui ikon
Start Debugging di toolbar, atau melalui menu Debug > Start Debuging.
6. Simpan aplikasi Anda.
3. Tambahkan kontrol ke form seperti pada gambar diatas dan atur propertinya
seperti tabel berikut:
4. Klik ganda pada Proses, kemudian ketikkan kode program berikut ini :
5. Jalankan aplikasi dengan menekan tombol F5 (di keyboard), atau melalui ikon
Start Debugging di toolbar, atau melalui menu Debug > Start Debuging.
6. Simpan aplikasi Anda.
58
D. Tugas Praktikum
1. Buatlah program untuk mempermudah pembayaran di suatu bioskop
Output :
a. Buatlah Tampilan Menu
b. Baru pilih horror atau romantic
Horor : 2
Romantic : 3
c. Hitung total harga Total Harga Rp. 8500,
2. Buat project baru dan Desain Tampilan form seperti gambar berikut ini :
Buatlah deret angka berdasarkan nilai awal pada textbox pertama dan nilai
akhir pada textbox kedua dan menampilkan hasil pada listview output
59
Praktikum 7
Array
A. Tujuan
Mahasiswa mampu menjelaskan konsep dasar array
B. Teori
Array adalah sekumpulan data yang memiliki tipe yang sama, sejumlah tetap, serta
disusun secara terstruktur dan disimpan dalam satu variabel yang sama, dan diurutkan
dengan index.
Bentuk Umum :
Dim Array[indeks,Indeks] As Tipe_Data
Dim Array[indeks,indeks,indeks] As Tipe_Data
Contoh :
Dim Arr(3, 1) AsString
Arr(0, 0) = "NIM"
Arr(0, 1) = "NAMA"
Arr(1, 0) = "JENIS KELAMIN"
Arr(1, 1) = "PRODI"
Arr(2, 0) = "Laki-laki"
Arr(2, 1) = "Perempuan"
Arr(3, 0) = "Manajemen Informatika"
Arr(3, 1) = "Teknik Informatika"
60
C. PRAKTIKUM
3. Tambahkan kontrol ke form seperti pada gambar diatas dan atur propertinya
seperti tabel berikut:
4. Klik ganda pada Form Load, kemudian ketikkan kode program berikut ini :
ListView1.GridLines = True
ListView1.View = View.Details
ListView1.Columns.Add("NIM")
ListView1.Columns.Add("NAMA", 115)
ListView1.Columns.Add("PRODI", 110)
TxtNim.Text = 1
TxtNama.Focus()
5. Klik ganda pada BtnTambah, kemudian ketikkan kode program berikut ini :
61
Dim Arr(2) AsString
Arr(0) = TxtNim.Text
Arr(1) = TxtNama.Text
Arr(2) = TxtProdi.Text
TxtNim.Text = TxtNim.Text + 1
TxtNama.Text = ""
TxtProdi.Text = ""
TxtNama.Focus()
6. Jalankan aplikasi dengan menekan tombol F5 (di keyboard), atau melalui icon
Start Debugging di toolbar, atau melalui menu Debug > Start Debuging.
7. Simpan aplikasi Anda.
3. Tambahkan kontrol ke form seperti pada gambar diatas dan atur propertinya
seperti tabel berikut:
62
Combo2 Name CmbProdi
ListView1 Name ListView1
Button1 Name BtnProses
Text Proses
4. Klik ganda pada Form Load, kemudian ketikkan kode program berikut ini :
ListView1.GridLines = True
ListView1.View = View.Details
For Baris = 0 To 1
For Kolom = 0 To 1
ListView1.Columns.Add(Arr(Baris, Kolom), 100)
Next Kolom
Next Baris
For Baris = 2 To 2
For Kolom = 0 To 1
CmbKelamin.Items.Add(Arr(Baris, Kolom))
Next Kolom
Next Baris
For Baris = 3 To 3
For Kolom = 0 To 1
CmbProdi.Items.Add(Arr(Baris, Kolom))
Next Kolom
Next Baris
5. Klik ganda pada BtnProses, kemudian ketikkan kode program berikut ini :
63
6. Jalankan aplikasi dengan menekan tombol F5 (di keyboard), atau melalui ikon
Start Debugging di toolbar, atau melalui menu Debug > Start Debuging.
Simpan aplikasi Anda
D. TUGAS PRAKTIKUM
Tambahkan kontrol ke form seperti pada gambar diatas dan atur propertinya seperti tabel
berikut:
coba masukkan kode barang sampai satuan, dan klik simpan maka di listview akan
tampil data yang telah terinput
64
Praktikum 8
Class, Object, Method, Event
A. Tujuan
Mahasiswa mampu menguasai pemahaman dan praktis class, object, method, event
B. Teori
Abstraction
Abstraction atau dalam bahasa Indonesia Abstraksi, bukanlah
mengenai kode program. Abstraksi hanyalah suatu proses dimana
seorang programmer melihat contoh-contoh di kehidupan nyata dan
menterjemahkan konsep-konsep yang didapat ke dalam suatu
program. Sebagai contoh, seorang programmer game mula-mula akan
melihat suatu mobil memiliki kecepatan, jumlah bensin dan jenis
bannya. Sedangkan programmer retailer otomotif mungkin akan lebih
peduli dengan harga, warna dan mereknya. Tentu saja mereka dapat
memasukkan semua hal tersebut dan hal lainnya ke dalam program.
Akan tetapi hal ini sangat bergantung dengan apa yang dilihat oleh
programmer.
65
Encapsulation
Pernahkah Anda melihat kapsul? Benda mengkilat yang kita makan
ketika kita sakit. Sesungguhnya, bagian mengkilatnya hanya bagian
luarnya. Di dalamnya terdapat banyak jenis obat dan vitamin yang
membuat kita lebih sehat. Ada dua hal yang terkait dengan fakta ini:
Kita tidak tahu apa yang ada di dalam kapsul. Kita hanya tahu
manfaat dan cara kerja kapsul tersebut (ditelan).
Memakan satu kapsul berarti memakan semua obat dan vitamin
di dalamnya sekaligus.
Pengguna class tidak perlu tahu bagian dalam dari class, mereka
cukup tahu kegunaan class tersebut.
Membuat suatu objek class tertentu berarti objek tersebut
memiliki semua properties, method, enum dan event di dalam
class tersebut.
Class pada C#
Kita mendefinisikan class di dalam namespace pada C#. Untuk
mendefinisikan suatu class sederhana, kita tuliskan dalam namespace:
66
1
2
3 namespace Belajar1 {
4 class Program {
static void Main(string[] args) {
5
6 }
7 }
8
9 public class Mobil {
10 public double kecepatan;
11 public double bensin;
public double posisi;
12 public string nama;
13
14 public void percepat() {
15 this.kecepatan += 10;
16 this.bensin -= 5;
}
17 public void maju() {
18 this.posisi += this.kecepatan;
19 this.bensin -= 2;
20 }
21 public void isiBensin(double bensin) {
this.bensin += bensin;
22 }
23 }
24 }
25
26
Perhatikan bahwa class Mobil berada di dalam namespace Belajar1
setingkat dengan class Program (dalam hal level kurung kurawalnya).
Di sini kita telah melakukan proses abstraksi. Pada class Mobil di atas,
kecepatan, bensin, posisi dan nama adalah fields, sedangkan percepat,
maju dan isiBensin adalah method. Field, Property dan Mehtod akan
dijelaskan lain kali.
Objek pada C#
Suatu class digunakan untuk membuat objek. Untuk membuat objek,
kita meng-instantiate suatu class dengan salah satu dari cara berikut:
[nama class] [nama objek] = new [nama class]();
[nama class] [nama objek] = new [nama class]() { field1=nilai1,
field2=nilai2, ... };
[nama class] [nama objek] = new [nama class](param1, param2, ...);
Ketika kita membuat suatu objek dari suatu class, kita mendapatkan
semua member dari class tersebut. Kita dapat mengkases member
class tersebut dengan mengetikkan titik dan nama member yang
bersangkutan. Sebagai contoh, kita tuliskan dalam class Program:
1 class Program {
static void Main(string[] args) {
2 Mobil SuatuMobil = new Mobil();
3 Mobil MobilSaya = new Mobil() { nama = "Ferrari", kecepatan = 0, bensin = 30
67
4 MobilSaya.Percepat();
5 Console.WriteLine(SuatuMobil.nama);
Console.WriteLine(SuatuMobil.bensin);
6
7 Console.WriteLine(MobilSaya.nama);
8 Console.WriteLine(MobilSaya.bensin);
9 Console.ReadKey();
10 }
}
11
12
13
Program di atas akan menampilkan:
[baris kosong]
0
Ferrari
30000
Baris pertama kosong dan baris kedua bernilai 0 karena nilai default
string dan int. Perlu diingat bahwa tidak baik untuk menggunakan
variabel (field nama dan bensin) tanpa menginisialisasinya, akan tetapi
program di atas hanyalah contoh. Inilah yang saya suka dari objek.
Kita cukup menuliskan new Mobil() satu kali, dan di dalam objek
tersebut kita sudah mendapatkan semua yang kita definisikan di dalam
class Mobil.
Constructor pada C#
Hampir selalu, kita perlu memberi nilai pada field atau property suatu
objek sebelum kita dapat menggunakannya. Untuk itu, kita gunakan
method constructor. Suatu constructor didefinisikan dengan cara:
public [nama class] (param1, param2, ...) {
//Hal-hal yang dilakukan ketika suatu objek diinstantiate (dibuat)
}
68
"this.nama". Untuk menggunakan constructor untuk membuat objek,
kita menggunakan kode seperti berikut:
1 public Mobil() {
2 this.nama = "";
3 this.kecepatan = 0;
4 this.bensin = 0;
5 this.posisi = 0;
}
6
Menurut pendapat saya, membuat constructor kosong seperti ini
berbahaya karena membuat kita dapat lupa mengisi field di dalam
objek kita.
Destructor pada C#
Meskipun constructor sangatlah penting, Saya tidak pernah benar-
benar menggunakan kebalikannya: Destructor di dalam suatu
program. Tujuan utama dari destructor biasanya untuk membebaskan
memoi. Akan tetapi dikarenakan C# sudah memiliki "garbage
collector" untuk membebaskan memori yang tidak digunakan lagi,
destructor sangat jarang digunakan. Untuk membuat suatu destructor,
cukup membuat suatu method dengan nama yang sama dengan nama
class diawali dengan tanda tilde (~). Sebagai contoh:
1 ~Mobil() {
2 Console.WriteLine("Mobil " + nama + " telah dihancurkan");
3 }
69
internal membuat member yang bersangkutan hanya dapat
diakses dari assembly yang sama, atau dengan kata lain,
aplikasi yang sama.
protected internal menggabungkan protected dan internal, yang
berarti member yang bersangkutan hanya dapat diakses dari
class itu sendiri atau dari class lain dari dalam assembly yang
sama yang merupakan turunan dari class yang bersangkutan.
Method pada C#
Method adalah sekumpulan pernyataan yang akan dijalankan ketika
dipanggil. Untuk mendefiniskan suatu method pada C#:
[Access modifier] [tipe data] [nama method] (parameter1, parameter2, ...) {
//Kumpulan perintah
}
Method void
Suatu method void adalah suatu method yang hanya menjalankan
sekumpulan perintah dan tidak menghasilkan suatu nilai (Tetapi masih
dapat menampilkan sesuatu ke layar). Sebagai contoh:
1 namespace Belajar2 {
class Program {
2 static void Main(string[] args) {
3 ContohMethod met = new ContohMethod();
70
4 met.Pemisah(); //Akan menampilkan pemisah
5 }
}
6
7 public class ContohMethod {
8 public void Pemisah() {
9 Console.WriteLine("----------------------");
10 Console.WriteLine("----------------------");
}
11 }
12 }
13
14
15
1
2 public void TampilBilanganRandom() {
Random r = new Random();
3 int angka = r.Next(1, 50);
4 if (angka > 25) {
5 Console.WriteLine("Terlalu panjang");
6 return;
7 }
for (int i = 1; i <= angka; i++) Console.Write(i + " ");
8 Console.WriteLine();
9 }
10
Jangan lupa panggil method tersebut pada method Main pada class
Program.
71
Jika tipe data method bukan void, perintah return harus menyertakan
suatu nilai yang akan menjadi nilai method tersebut. Sebagai contoh,
tambahkan method berikut ke dalam class ContohMethod:
1
public int GaussianRandom() {
2 Random r = new Random();
3 int angka1 = r.Next(0, 10);
4 int angka2 = r.Next(0, 10);
5 int angka3 = r.Next(0, 10);
return angka1 + angka2 + angka3;
6 }
7
Untuk mencoba method tersebut, tambahkan pemanggilan
method GaussianRandom pada method Main, sehingga kodenya
menjadi:
1
static void Main(string[] args) {
2 ContohMethod met = new ContohMethod();
3
4 met.TampilBilanganRandom();
5 met.Pemisah();
6 Console.WriteLine(met.GaussianRandom());
7 met.Pemisah();
8
Console.ReadKey();
9 }
10
Topik mengenai random Gaussian berada di luar pembahasan kita.
Anggap saja sebagai bentuk lain dari random. Suatu method dengan
nilai return sebaiknya digunakan seperti suatu variabel seperti
ditunjukkan pada kode di atas.
72
1 public int Max(int a, int b, int c = Int32.MinValue) {
2 int max1 = (a > b) ? a : b;
3 return (c > max1) ? c : max1;
4 }
Sekarang, kita masih dapat menggunakan method tersebut dengan
hanya dua parameter, tetapikita juga dapat menggunakan method
tersebut dengan tiga parameter:
1 int a = 1000;
2 int b = 50;
3 met.tukar(a, b);
4 Console.WriteLine(a); //masih 1000
73
Program masih akan menampilkan 1000. Akan tetapi apabila kita
menyatakan parameternya sebagai referensi:
1 int a = 1000;
2 int b = 50;
3 met.tukar(ref a, ref b);
4 Console.WriteLine(a); //Menampilkan 50
Program akan menampilkan 50 yang semulanya merupakan nilai
variabel b. Perlu diketahui juga bahwa variable yang dideklarasikan di
dalam suatu method akan hilang begitu alur program keluar dari
method.
1 int angka = 7;
2 int terdekat;
3 bool BerupaFaktor = met.Kelipatan3(angka, out terdekat);
4 if (BerupaFaktor) Console.WriteLine(angka + " adalah kelipatan 3");
else Console.WriteLine(angka + " bukan kelipatan 3. Kelipatan terdekat: " + terde
5
74
2 for (int i = 1; i <= 5; i++) Pemisah();
3 }
Method yang memanggil dirinya sendiri di dalam dirinya disebut
method rekursif. Sebagai contoh:
1 Ulang('*', 30);
Program akan menampilkan karakter bintang 30 kali. Apabila kita
mendeklarasikan method di atas pada class ContohMethod, kita
memanggil method tersebut dengan cara:
1 ContohMethod.Ulang('*', 30);
75
Praktikum 9
Exception Handling
A. Tujuan
Mahasiswa mampu menguasai pemahaman dan praktis Exception Handling
B. Teori
EXCEPTION HANDLING
Perintah penanganan kesalahan atau yang lebih dikenal dengan sebutan Exception
Handling Perintah ini digunakan untuk menangani kesalahan dalam menjalankan
aplikasi, dengan adanya perintah ini setiap kesahan akan diatasi secara otamatis sesuai
dengan perintah penanganan kesalahan yang telah dibuat, sehingga tidak terjadi
kemacetan aplikasi yang sedang berjalan.
Try
[ Perintah ]
Catch
[Tampilkan kesalahan]
Finally
[ Kode program setelah perintah Try dan Catch ]
End Try
Contoh :
Try
Dim X%
X = TxtAngka.Text
Catch ex As Exception
MsgBox(ex.ToString)
MsgBox(“Input angka saja”)
Finally
TxtAngka.Text=””
TxtAngka.Focus()
End Try
Throw
Throw merupaka perintah penanganan kesalahan yang berfungsi untuk menangani
kesalahan apabila perintah try…catch … Finally … End. Try tidak dapat menangani
suatu kesalahan dari jawaban aplikasi.
76
Contoh penulisan :
Try
[ Perintah ]
Catch ex As Exception
[Tampilkan kesalahan]
Throw ex
// mengembalikan ke kode pemanggil
Finally
[ Kode program setelah perintah Try dan Catch ]
Perintah ini bersifat optional bias dibuat bias tidak
End Try
Contoh :
Try
Dim X%
X = TxtAngka.Text
Catch ex As Exception
MsgBox(ex.ToString)
MsgBox(“Input angka saja”)
Throw ex
Finally
TxtAngka.Text=””
TxtAngka.Focus()
End Try
On Error Goto
Merupakan perintah penanganan kesalahan apabila terjadi kesalahan terhadap suatu
baris tertentu maka perintah akan melompat ke baris yang dituju akan dijalankan.
Contoh :
On Error Goto Pesan
Dim A As Integer
X = TextBox1.Text
TextBox1.Text=”String”
Exit Sub
Pesan :
MsgBox(“Abaikan Kesalahan”)
77
C. PRAKTIKUM
Latihan 1
3. Tambahkan kontrol ke form seperti pada gambar diatas dan atur propertinya
seperti tabel berikut:
4. Klik ganda pada Tombol Buka, kemudian ketik kode program berikut ini :
If OfdBuka.ShowDialog() = Windows.Forms.DialogResult.OK Then
Try
PcbGambar.Image = Image.FromFile(OfdBuka.FileName)
Me.Text = "Membuka File " + OfdBuka.FileName
Catch ex As Exception
MessageBox.Show("File Gagal dibuka", "Error", MessageBoxButtons.OK,
MessageBoxIcon.Error)
EndTry
EndIf
5. Klik ganda pada tombol BtnExit, Kemudian ketikkan kode program berikut ini :
78
ExitSub
EndIf
6. Jalankan aplikasi dengan menekan tombol F5 (di keyboard), atau melalui icon
Start Debugging di toolbar, atau melalui menu Debug > Start Debuging.
7. Simpan aplikasi Anda.
Latihan 2
3. Tambahkan kontrol ke form seperti pada gambar diatas dan atur propertinya
seperti tabel berikut:
4. Double klik pada tombol BtnProses, kemudian ketik kode Program berikut ini :
Try
Dim X AsInteger
X = TxtAngka.Text
Do
X = X Mod 2
If X = 0 Then
MessageBox.Show("Bilangan Genap", "Informasi")
ExitDo
ElseIf X = 1 Then
MessageBox.Show("Bilangan Ganjil", "Informasi")
ExitDo
EndIf
LoopWhileNot X
Catch ex As Exception
MsgBox("Salah menginput data / input angka")
Finally
TxtAngka.Text=””
TxtAngka.Focus()
EndTry
5. Jalankan aplikasi dengan menekan tombol F5 (di keyboard), atau melalui icon
Start Debugging di toolbar, atau melalui menu Debug > Start Debuging.
Simpan aplikasi Anda
79
Praktikum 10
Pemrograman Database
A. Tujuan
Mahasiswa mampu menunjukkan langkah konfigurasi dan koneksi database MySql
untuk membangun aplikasi database menggunakan Microsoft Visual C#
B. Teori
Database pada C#
Berurusan dengan database pada C#, pada dasarnya kita memerlukan
paling tidak 4 dari class-class berikut:
80
MySQL: Jika Anda hanya ingin menginstall MySQL
saja. http://dev.mysql.com/downloads/mysql/
MariaDb: fork dari MySQL yang diprakarsai oleh pengagas
MySQL. https://mariadb.org/
XAMPP: salah satu dari paket aplikasi WAMP (Windows Apache
MySQL PHP). Dianjurkan apabila Anda juga ingin mencoba
pemrograman
PHP. http://www.apachefriends.org/en/xampp.html
Appserv: paket aplikasi WAMP lainnya. Bagus, tetapi tidak
dianjurkan karena sepertinya tidak diupdate
lagi. http://www.appservnetwork.com/
81
Dengan ini, kita siap untuk berkerja dengan database pada C#. Perlu
diketahui juga apabila menggunakan database selain MySQL, bahwa
OleDb, SqlClient dan Odbc sudah tersedia pada namespace
System.Data, dan oleh karena itu, tidak perlu menambahkan reference
untuk menggunakan namespace tersebut.
C. Praktikum
Software yang dibutuhkan :
· Microsoft Visual Studio 2008 Express Edition
· MySQL 5
· MySQL Connector
Diinstal dulu pada laptop/PC.
Langkah-Langkah Teknis :
1. Buka Microsoft visual studio 2008, create new project. Pilih windows form
application, kemudian namakan projectnya sesuai dengan nama project yang anda
inginkan. Misalnya MenuUtama
82
2. Setelah selesai klik ok. Apabila sudah di klik ok, tampilan berikutnya seperti
dibawah ini.
83
Pada tampilan pojok kanan anda, ada bagian Solution Explorer.
3. Langkah berikutnya adalah kita membuat koneksi antara Visual C# dengan
MySQL. Dengan menambahkan reference MySQL ke Visual C#. Caranya pada
bagian Solution Explorer di pojok kanan anda klik kanan pada -> references project
anda, kemudian anda pilih -> add references -> pilih browse kemudian tambahkan
references mysql.data.dll.
84
4. Setelah berhasil menambahkan references mysql.data.dll ke Visual C#. Artinya
kita sudah dapat menampilkan data dari database MySQL menggunakan form Visual
C#.
2. Apabila berhasil, akan tampil seperti gambar dibawah ini. Menustrip disini
sebagai menu utama pada project yang anda buat. Menustrip tersebut dapat anda edit
sesuai dengan kebutuhan anda.
85
3. Setelah berhasil membuat menustrip. Berikutnya kita membuat form
menampilkan data yang ada menjadi form MDI. Caranya pada properties di pojok kiri
anda, pilihan IsMdiContainer diberikan nilai True.
86
4. Jika berhasil makan form menampilkan data yang anda buat akan tampak
seperti dibawah ini.
5. Setelah itu, kita membuat form yang baru untuk menampilkan data. Form yang
baru yang akan ditampilkan melalui menustrip yang sebelumnya sudah kita buat.
Yang pertama harus dilakukan adalah membuat sebuah form yang baru. Caranya pada
bagian Solution Explorer, klik kanan pada project anda -> pilih -> Add -> Windows
Form.
6. Muncul tampilan untuk rename nama form baru yang akan dibuat. Misalnya
namanya DataPelanggan, artinya form baru yang kita buat bernama form
DataPelanggan.
87
7. Jika berhasil maka pada tampilan form, anda akan diarahkan ke form baru yang
dibuat.
88
8. Tinggal sejenak Form Menu yang tadi kita buat. Berikutnya kita akan
menampilkan data pelaanggan yang ada dari dalam database MySQL ke form
DataPelanggan. Untuk menampilkan data dari MySQL ke Form data pelanggan,
terlebih dahulu kita membuat kelas untuk koneksi antara Visual C# dengan database
MySQL. Caranya dengan membuat sebuah kelas baru. Caranya sama dengan
membuat Form baru pada Solution Explorer, kemudian klik kanan pada nama project
anda pilih -> Add -> Class, kemudian muncul tampilan untuk rename nama kelas
yang baru anda buat.
9. Setelah selesai dibuat, pada Solution Explorer project anda akan terlihat
Koneksi.cs. Buka fila Koneksi.cs tersebut dengan cara klik 2x (dobel klik) pada file
tersebut.
89
10. Lengkapi source code nya dengan menambahkan sorce code dibawah ini :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MySql.Data.MySqlClient;
namespace IGO_SKRIPSI
{
class Koneksi
{
public static MySqlConnection getKoneksi()
{
String MyConString = "SERVER=localhost;"+
"DATABASE=komplain_puri;" +
"UID=root;" +
"PASSWORD=admin;";
return new MySqlConnection(MyConString);
}
}
}
PENTING! Pastikan nama database dan password pada MySql anda tulis dengan
benar. Harap diperhatikan pada :
- DATABASE : Ganti dan Tuliskan nama database yang anda buat.
- UID : root
- PASSWORD : Ganti dan Tuliskan sesuai dengan password MySQL anda.
11. Setelah selesai, kita kembali pada form DataPelanggan yang tadi kita buat. Pada
form DataPelanggan kita tambahkan datagridview. Caranya pada Toolbox -> All
Windows Form Pilih -> DataGridView klik dan tahan kemudian di drag kedalam
form DataPelanggan, sama seperti menambahkan menustrip.
90
12. Berikutnya kita mencoba menampilkan data pelanggan yang kita buat pada
database pada Form DataPelanggan. Caranya pada form DataPelanggan, klik kanan
dan pilih view code.
91
13. Maka, anda akan berhadapan dengan sorce code pada form DataPelanggan.
Tidak perlu panik dan bingung. Ikuti saja langkah-langkah pada tutorial ini.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace ViewDataSBD
{
public partial class DataPelanggan : Form
{
public DataPelanggan()
{
InitializeComponent();
}
92
command.CommandText = "SELECT * FROM tb_costumer";
conn.Open();
DataSet ds = new DataSet();
MySqlDataAdapter da = newMySqlDataAdapter(command);
da.Fill(ds, "data");
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "data";
conn.Close();
}
}
}
15. Kemudian untuk menguji data pada database sudah bisa ditampilkan, dengan
cara menekan tombol F5 (Run Program). Akan tetapi form yang akan ditampilkan
duluan adalah form MenuUtama karena secara default visual C# akan menampilkan
form yang pertama kali dibuat pada saat running. Untuk mengujinya pada Solution
Explorer -> Program.cs anda rubah source codenye pada Application.Run(new
DataPelanggan), sesuai dengan nama form yang akan ditampilkan, pada contoh ini
adalah form kedua yang kita buat atau form DataPelanggan:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace ViewDataSBD
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new DataPelanggan());
}
}
}
16. Apabila langkah-langkah diatas sudah dilakukan dengan benar makan hasil dari
form data pelanggan pada aplikasi yang anda buat akan tampil seperti dibawah ini.
93
17. Berikutnya, kita akan menampilkan form DataPelanggan yang kita buat ini agar
ditampilkan pada form MenuUtama yang berbasis MDI Form. Pertama-tama kita
kembali dulu pada form MenuUtama. Pada menustrip View Data -> klik 2x(dobel
klik) Data Pelanggan, sehingga anda akan diarahkan pada source code menustrip data
pelanggan, seperti pada gambar dibawah ini :
94
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace ViewDataSBD
{
public partial class MenuUtama : Form
{
public MenuUtama()
{
InitializeComponent();
}
19. Kemudian, coba jalankan form MenuUtama pada aplikasi, jangan lupa merubah
DataPelanggan menjadi MenuUtama pada langkah 15. Sehingga form yang pertama
kali di run adalah form MenuUtama. Apabila berhasil dan langkah-langkah yang anda
lakukan sudah benar akan tampak seperti gambar dibawah ini :
95
20. Lakukan langkah yang sama untuk menampilkan data-data lainnya dari database.
Pada contoh tutorial ini data yang ditampilkan adalah data pelanggan. Silahkan
menambahkan form yang lain misalnya seperti form DataTransaksi, DataBarang dan
lain sebagainya. Silahkan mengulangi langkah 5-19 untuk membuat form lain untuk
menampilkan data yang lain dengan cara yang sama.
D. Tugas Praktikum
Buatlah program perpustakaan berbasis database dengan menggunakan visual C# dan
mysql
96
DAFTAR PUSTAKA
Sharp, Jhon, 2015, Step by Step Microsoft Visual C# 2013, Octal Publishing Inc.,
USA
P. Deitel, H. Deitel, 2014, Visual C# 2012 How To Program 5th Edition, Deitel and
Associates, Inc., USA
Petter Halvorse, Hans, 2016, Introduction to Visual Studio and C#, University
College of Southeast Norway, Norwegia
97