Windows Form (Kontrol Tingkat Lanjut) Pemrograman Visual Windows Form (Kontrol Tingkat Lanjut) Ramos Somya
PictureBox dan OpenFileDialog PictureBox merupakan kontrol yang digunakan untuk menampilkan gambar.
Properties yang digunakan Image Menentukan file gambar yang akan ditampilkan dalam kontrol PictureBox. Sizemode Mengatur ukuran tampilan file gambar dalam kontrol PictureBox. Ada beberapa nilai: Normal StrecthImage CenterImage Autosize
OpenFileDialog FileName Menentukan lokasi dan nama file yang akan dibuka oleh kontrol OpenFileDialog. Filter Menentukan jenis file yang dapat dibuka oleh kontrol OpenFileDialog.
Contoh
… private void btnBrowse_Click(object sender, EventArgs e) { try OpenFileDialog open = new OpenFileDialog(); open.Filter = "Image Files(*.jpg; *.jpeg; *.gif; *.bmp) | *.jpg; *.jpeg; *.gif; *.bmp"; if (open.ShowDialog() == DialogResult.OK) pictureBox1.Image = new Bitmap(open.FileName); } catch (Exception) throw new ApplicationException("Failed loading image");
ComboBox dan ListBox Sebelumnya kita telah mempelajari CheckBox dan RadioButton yang berguna untuk memberi pada user beberapa pilihan. ComboBox user dapat mengklik control ini sehingga muncul sebuah daftar item yang dapat dipilih dalam bentuk drop down (ditarik ke bawah) dan user hanya dapat memilih satu dari sekian banyak item yang ditawarkan. ListBox akan memunculkan daftar item yang dapat discroll ke atas maupun ke bawah, pada kontrol ini user dapat memilih lebih dari satu item.
Properties Items Item yang dapat dipilih oleh user, untuk mengisi item secara langsung.
… this.namaKontrol.Items.Add("nama item"); string pilihan = (string)this.cmbBahasa.SelectedItem; event SelectedIndexChanged Event ini akan bereaksi pada saat kita mengubah pilihan pada ComboBox atau ListBox, sehingga tidak diperlukan pemicu lain seperti Button.
… Khusus untuk ComboBox, terdapat sebuah property yang digunakan untuk memilih jenis ComboBox tersebut. Property tersebut bernama DropDownStyle, yang memiliki beberapa nilai sebagai berikut: Simple DropDown DropDownList
… Sedangkan untuk ListBox, terdapat sebuah property yang digunakan untuk banyaknya pilihan yang dapat diambil dari ListBox tersebut. Property tersebut bernama SelectionMode, yang memiliki beberapa nilai sebagai berikut: None One MultiSimple MultiExtended
Contoh
… private void cmbBahasa_SelectedIndexChanged(object sender, EventArgs e) { if (this.cmbBahasa.SelectedIndex == 0) this.lblTrims.Text = "Terima Kasih"; } else if (this.cmbBahasa.SelectedIndex == 1) this.lblTrims.Text = "Thank You"; else if (this.cmbBahasa.SelectedIndex == 2) this.lblTrims.Text = "Xie Xie Ni"; else if (this.cmbBahasa.SelectedIndex == 3) { this.lblTrims.Text = "Arigato"; } else if (this.cmbBahasa.SelectedIndex == 4) this.lblTrims.Text = "Danke"; else if (this.cmbBahasa.SelectedIndex == 5) this.lblTrims.Text = "Gracias"; string pilihan = (string)this.cmbBahasa.SelectedItem;
DateTimePicker DatetimePicker adalah kontrol yang digunakan untuk masukan data berupa tanggal atau waktu. Properties: Format Mengatur bentuk data yang akan ditampilkan dalam kontrol. Format data yang dapat kita gunakan di antaranya: Long Short Time Custom Value Menyatakan nilai tanggal atau waktu yang sedang aktif pada kontrol DateTimePicker tersebut.
… Showupdown Mengatur bentuk kontrol DateTimePicker sehingga bia mengubah nilai tanggal dengan menekan tombol up atau down yang disediakan kontrol tersebut. Cursor Menentukan jenis kursor mouse saat berada tepat di atas kontrol. Di samping properties ada sebuah event khusus yang dapat digunakan untuk memicu reaksi dari program, event khusus tersebut bernama ValueChanged, event ini bereaksi ketika nilai atau value dari kontrol DatetimePicker diubah oleh pengguna
… ada beberapa method yang menyertai property value, method-method tersebut berhubungan dengan operasi nilai tanggal atau waktu. Yaitu : AddDays(int nilai) Menambah hari dengan nilai tanggal yang ada pada property value. AddMonths(int nilai) Menambah bulan dengan nilai tanggal yang ada pada property value. AddYears(int nilai) Menambah tahun dengan nilai tanggal yang ada pada property value. AddHours(int nilai) Menambah jam dengan nilai waktu yang ada pada property value.
… AddMinutes(int nilai) Menambah menit dengan nilai waktu yang ada pada property value. AddSeconds(int nilai) Menambah detik dengan nilai waktu yang ada pada property value.
Contoh Aplikasi untuk simulasi peminjaman buku di sebuah perpustakaan.
… private void dtpPinjam_ValueChanged(object sender, EventArgs e) { this.dtpKembali.Value = this.dtpPinjam.Value.AddDays(7); } private void btnSimpan_Click(object sender, EventArgs e) string pesan; pesan = "Buku dengan Kode:"; pesan = pesan + this.txtKode.Text; pesan = pesan + "\nPinjam:"; pesan = pesan + this.dtpPinjam.Value; pesan = pesan + "\nKembali:"; pesan = pesan + this.dtpKembali.Value; MessageBox.Show(pesan);
Hasil
Timer Timer adalah sebuah kontrol yang yang berjalan seiring dengan interval waktu yang diberikan oleh pengguna. Properties: Interval Berguna untuk satuan waktu bagi timer untuk melakukan event Tick. Dihitung dalam satuan milidetik atau 1/1000 detik. Enabled Bila variabel ini diset true, maka event Tick pada Timer akan mulai berjalan. Timer memiliki event khusus yang bernama Tick, di mana event ini akan terpicu setiap satuan waktu tertentu yang diberikan dalam nilai pada property Interval.
Contoh:
… Kode Program pada button Start private void btnStart_Click(object sender, EventArgs e) { this.lblDetik.Text = this.txtDetik.Text; this.detik = Convert.ToInt32(this.txtDetik.Text); this.tmrHitung.Enabled = true; }
… Kode Pada Timer: private void tmrHitung_Tick(object sender, EventArgs e) { if (detik > 0) detik--; this.lblDetik.Text = Convert.ToString(detik); } else this.tmrHitung.Enabled = false; MessageBox.Show("Waktu Habis", "Info");
Hasil
Tugas Take Home Tampilan saat running: Kemudian akan muncul: Username: FTI Password: FTI
... Setelah login sukses akan muncul: Kemudian muncul halaman utama:
...
Ketentuan Kerjakan pertahap seperti penjelasan pada pertemuan sebelumnya (ada 4 tahap). Kerjakan secara kelompok maksimal 2 mahasiswa. Dikumpulkan dalam .doc ke email ramos.somya@gmail.com paling lambat hari Sabtu, 8 November 2014 pukul 23.59 WIB. Subject email: TGS 3 PV 2014 Nama file: TGS3_PV_NIM1_NIM2.doc Tidak sesuai ketentuan tidak akan dinilai.
See You Next Week