Anda di halaman 1dari 26

Sesi 7

by : Ng Poi Wong, S.Kom., M.T.I.

Dynamic
Link Library
(DLL)
Dynamic Link Library
• Class Library
• Form Dinamis
• User Control
• Windows Forms Control Library

Pemrograman Berorientasi Objek 2


Class Library
• Dynamic Link Library (DLL) dapat berupa
berbasis teks dan visual.
• DLL berbasis teks dibuat melalui Class Library,
sedangkan berbasis visual melalui Windows
Forms Control Library.
• Dengan menggunakan DLL, dapat dibangun
kumpulan prosedur atau fungsi yang dapat
digunakan oleh project lain, termasuk project
lintas bahasa pemrograman visual studio.
Pemrograman Berorientasi Objek 3
Class Library
• Contoh : Buat 1 solution dengan 1 project Class
Library dengan nama clsTesting.
• Secara otomatis, di dalam project tersebut telah
tersedia 1 kelas dengan nama Class1.
• Ganti nama Class1 menjadi clsMate.
• Tambahkan 1 kelas lagi ke dalam project tersebut
dengan nama clsString.

Pemrograman Berorientasi Objek 4


Class Library
• Tuliskan kode program berikut ke dalam kelas
clsMate :
public int A { set; get; }
public int B { set; get; }
public int tambah() {
return A + B;
}
public int kurang() {
return A - B;
}

Pemrograman Berorientasi Objek 5


Class Library
• Pada clsString, tambahkan statement public ke
bagian deklarasi kelas sehingga menjadi :
public class ClsString

• Tuliskan kode program berikut ke dalam kelas


clsString :
public string namaDepan { set; get; }
public string namaBelakang { set; get; }
public string namaLengkap() {
return String.Concat(namaDepan, " ", namaBelakang);
}

Pemrograman Berorientasi Objek 6


Class Library
• Buatkan 1 project baru (bebas mau project
apapun, dapat berupa project dengan bahasa
pemrograman yang berbeda). Project baru ini
bebas apakah berada dalam 1 solution yang
sama, atau solution baru.
• Lakukan Add Reference untuk menambahkan
daftar DLL baru, yakni clsTesting.dll.

Pemrograman Berorientasi Objek 7


Class Library
• Pada View Code dari project baru tersebut,
tambahkan baris program berikut ke bagian
teratas dari View Code :
using clsTesting;

• Untuk dapat menggunakan ke-2 kelas yang ada di


dalam clsTesting, maka harus dibuat objek dari
ke-2 kelas tersebut, misalnya :
ClsMate mate = new ClsMate();
ClsString str = new ClsString();

Pemrograman Berorientasi Objek 8


Form Dinamis
• Untuk membangun program tanpa harus
mendesain tampilan Form dengan Click and
Drag, melainkan desainnya dibangun dengan
kode program.
• Dengan Form Dinamis, dapat dibangun Windows
Forms Application melalui Console Application.

• Contoh : Buat 1 project dengan 1 Form (Form1).

Pemrograman Berorientasi Objek 9


Form Dinamis
• Tuliskan kode program berikut ke kelas Form1
bagian deklarasi :
Label label1 = new Label();
Label label2 = new Label();
Label label3 = new Label();
Label lblHasil = new Label();
TextBox txtA = new TextBox();
TextBox txtB = new TextBox();
Button btnTambah = new Button();
Button btnTutup = new Button();

Pemrograman Berorientasi Objek 10


Form Dinamis
• Tambahkan kode program berikut ke dalam
constructor Form1 :
this.Font = new Font("Courier New", 10, FontStyle.Bold);
this.Size = new Size(220, 210);
this.ControlBox = false;
this.StartPosition = FormStartPosition.CenterScreen;
this.Text = "Form Dinamis";
label1.Location = new Point(12, 15);
label1.Size = new Size(80, 16);
label1.Text = "Nilai A =";
label2.Location = new Point(12, 43);
label2.Size = new Size(80, 16);
label2.Text = "Nilai B =";

Pemrograman Berorientasi Objek 11


Form Dinamis
label3.Location = new Point(12, 108);
label3.Size = new Size(80, 16);
label3.Text = "Hasil =";
lblHasil.Location = new Point(98, 101);
lblHasil.AutoSize = false;
lblHasil.BorderStyle = BorderStyle.Fixed3D;
lblHasil.Size = new Size(100, 30);
lblHasil.TextAlign = ContentAlignment.MiddleCenter;
lblHasil.Text = "";
txtA.Location = new Point(98, 12);
txtA.Size = new Size(100, 22);
txtA.KeyPress += new KeyPressEventHandler(keypressed);
txtB.Location = new Point(98, 40);
txtB.Size = new Size(100, 22);
txtB.KeyPress += new KeyPressEventHandler(keypressed);

Pemrograman Berorientasi Objek 12


Form Dinamis
btnTambah.Location = new Point(98, 68);
btnTambah.Size = new Size(100, 30);
btnTambah.Text = "Tambah";
btnTambah.Click += new EventHandler(tambah);
btnTutup.Location = new Point(12, 134);
btnTutup.Size = new Size(186, 30);
btnTutup.Text = "Tutup";
btnTutup.Click += new EventHandler(tutup);
this.Controls.Add(lblHasil);
this.Controls.AddRange(new Control[] { label1, label2,
label3 });
this.Controls.AddRange(new Control[] { txtA, txtB });
this.Controls.AddRange(new Control[] { btnTambah, btnTutup });

Pemrograman Berorientasi Objek 13


Form Dinamis
• Saat menuliskan baris program untuk
menambahkan event handler, secara otomatis
akan menambahkan prosedur yang akan
dieksekusi oleh event tersebut, yakni prosedur
keypressed, tambah, dan tutup.
• Tuliskan kode program berikut ke dalam prosedur
keypressed :
if (!((Keys)e.KeyChar >= Keys.D0 && (Keys)e.KeyChar <= Keys.D9
|| (Keys)e.KeyChar == Keys.Back))
e.KeyChar = (char)Keys.None;

Pemrograman Berorientasi Objek 14


Form Dinamis
• Tuliskan kode program berikut ke dalam prosedur
tambah :
lblHasil.Text = (Convert.ToInt32(txtA.Text) +
Convert.ToInt32(txtB.Text)).ToString();

• Tuliskan kode program berikut ke dalam prosedur


tutup :
this.Close();

• Jalankan programnya dan lihat hasilnya

Pemrograman Berorientasi Objek 15


User Control
• Merupakan fitur untuk membuat objek kontrol
sendiri, sehingga hasilnya akan muncul objek
kontrol baru ke dalam ToolBox.
• Setiap objek kontrol memiliki properties
tersendiri, dimana tipe dari setiap elemen
properties dapat berupa string, numerik, enum,
dan sebagainya.

Pemrograman Berorientasi Objek 16


User Control
• Contoh : Buat 1 project dengan 1 Form (Form1),
kemudian tambahkan 1 UserControl
(UserControl1). Pada UserControl tersebut,
pasangkan masing-masing 1 TextBox (txtUC), 1
Button (btnUC), dan 1 Label (lblUC).
• Tuliskan baris program berikut pada event Click
pada tombol btnUC :
lblUC.Text = txtUC.Text;

Pemrograman Berorientasi Objek 17


User Control
• Tambahkan assesor dan mutator berikut ke
dalam UserControl1 :
public string teks {
set {
txtUC.Text = value;
}
get {
return txtUC.Text;
}
}

Pemrograman Berorientasi Objek 18


User Control
• Tambahkan lagi assesor dan mutator berikut ke
dalam UserControl1 :
public Font labelFont {
set {
lblUC.Font = value;
}
get {
return lblUC.Font;
}
}

Pemrograman Berorientasi Objek 19


User Control
• Lakukan Build pada project tersebut, kemudian
masuk ke View Designer dari Form1. Perhatian
pada jendela ToolBox, apa yang terjadi ?
• Pasangkan UserControl1 pada Form1, kemudian
perhatikan jendela Properties dari UserControl1,
apa yang terjadi ?

Pemrograman Berorientasi Objek 20


User Control
• Tambahkan assesor dan mutator berikut ke
dalam UserControl1 :
public bool labelAutoSize {
set {
lblUC.AutoSize = value;
}
get {
return lblUC.AutoSize;
}
}

Pemrograman Berorientasi Objek 21


User Control
• Kemudian tambahkan 1 enumerasi berikut ke
dalam UserControl1 :
public enum borderStyle {
Normal = 0,
FixedSingle = 1,
Fixed3D = 2
}

• Kemudian tambahkan assesor dan mutator


berikut ke dalam UserControl1 :

Pemrograman Berorientasi Objek 22


User Control
public borderStyle labelBorderStyle {
set {
lblUC.BorderStyle = (BorderStyle)value;
}
get {
return (borderStyle)lblUC.BorderStyle;
}
}

• Lakukan Build kembali pada project, kemudian


lihat apa yang terjadi pada jendela Properties
dari UserControl1.

Pemrograman Berorientasi Objek 23


Windows Forms Control Library
• Merupakan fitur untuk membangun DLL berbasis
visual.
• DLL tersebut berupa Control Library yang dapat
digunakan lintas project (dapat beda bahasa).

• Contoh : Buat 1 project baru berupa Windows


Forms Control Library, kemudian lakukan langkah
yang sama dengan contoh User Control. Lakukan
Build setelah selesai.
Pemrograman Berorientasi Objek 24
Windows Forms Control Library
• Buatkan lagi 1 project baru (bebas mau project
apapun, dapat berupa project dengan bahasa
pemrograman yang berbeda). Project baru ini
bebas apakah berada dalam 1 solution yang
sama, atau solution baru.
• Lakukan Add Reference untuk menambahkan
daftar DLL baru, yakni
WindowsFormsControlLibrary1.dll.
• Perhatian apa yang terjadi pada jendela ToolBox.

Pemrograman Berorientasi Objek 25


Pemrograman Berorientasi Objek 26

Anda mungkin juga menyukai