PROGRAM FUNGSI ENTER DINAMIS MENGGUNAKAN BAHASA PEMROGRAMAN C#
Dalam dunia pemrograman, programmer yang baik adalah
programmer yang mampu meringkas program seringkas mungkin. Dengan kata lain
programmer mampu menciptakan jalur yang lebih singkat sehingga sistem mampu
berjalan lebih cepat dari semestinya. selain itu, programmer juga dituntut
untuk mengerjakan project dengan script yang rapi supaya tidak ada kebingungan
dalam pembuatan program tersebut
Dari masalah tersebut, sebenarnya solusinya adalah Class,
setiap program yang berisi fungsi-fungsi yang diperlukan dan akan dipanggil
oleh banyak program lain, maka dengan adanya class, program dapat dibuat dengan
lebih rapi dan lebih simpel. Dan juga lebih mudah dipahami. Karena hal itu,
saya akan membagikan program untuk fungsi tombol enter.
Pada umumnya kita perlu memasukkan fungsi enter tersebut ke
tiap control. Namun dengan program yang akan saya bagikan ini, kita hanya perlu
menambahkan satu fungsi saja dan hanya perlu di pangggil di form_load
Berikut langkah – langkahnya
1. Buka visual studio
2. Pilih new project
3. Kemudian buatlah class dan beri nama DinamycKey
4. Copy paste program dibawah ini
private Action act =null;
private KeyPressEventHandler handle;
public dynamicKey()
{
handle = new KeyPressEventHandler(enter);
}
public void sign(Control control, Action act)
{
this.act = act;
foreach (Control ctrl in control.Controls)
{
if (ctrl is TextBox)
{
TextBox TB = (TextBox)ctrl;
TB.KeyPress += handle;
}
else if (ctrl is RadioButton)
{
RadioButton rb = (RadioButton)ctrl;
rb.KeyPress += handle;
}
else if (ctrl is ComboBox)
{
ComboBox cb = (ComboBox)ctrl;
cb.KeyPress += handle;
}
else if (ctrl is DateTimePicker)
{
DateTimePicker di = (DateTimePicker)ctrl;
di.KeyPress += handle;
}
else
{
sign(ctrl, act);
}
}
}
private void enter(object sender, KeyPressEventArgs ex)
{
if (ex.KeyChar == 13)
{
act();
this.handle = null;
}
}
Penjelasan Program
private Action act =null;
program diatas menentukan variabel act
private KeyPressEventHandler handle;
untuk memanggil fungsi keypress dengan object handle
public dynamicKey()
{
handle = new KeyPressEventHandler(enter);
}
Program diatas merupakan constructor. Yaitu ketika class dinamycKey dipanggil, maka handle akan terpanggil
public void sign(Control control, Action act)
{
this.act = act;
foreach (Control ctrl in control.Controls)
{
if (ctrl is TextBox)
{
TextBox TB = (TextBox)ctrl;
TB.KeyPress += handle;
}
else if (ctrl is RadioButton)
{
RadioButton rb = (RadioButton)ctrl;
rb.KeyPress += handle;
}
else if (ctrl is ComboBox)
{
ComboBox cb = (ComboBox)ctrl;
cb.KeyPress += handle;
}
else if (ctrl is DateTimePicker)
{
DateTimePicker di = (DateTimePicker)ctrl;
di.KeyPress += handle;
}
else
{
sign(ctrl, act);
}
}
}
Fungsi diatas digunakan untuk membaca ketika fungsi tersebut dipanggil, cursor berada di toolbox yang mana. Bisa ditambah sesuai keinginan. Apabila menggunakan framework donetbar, maka perlu untuk menambah component dotnetbar. Seperti contohnya TextBoxX. Tinggal ganti saja nama componentnya
private void enter(object sender, KeyPressEventArgs ex)
{
if (ex.KeyChar == 13)
{
act();
this.handle = null;
}
}
Fungsi diatas adlaah fungsi untuk menjalankan act() dengan enter (13). Act di class ini merupakan variabel kosong. Act akan diisi pada class pemanggil. Seperti fungsi untuk menyimpan misal. Kita membuat fungsi sendiri kemudian kita panggil lewat class sign(control, act) yang mana control merupakan component dan act merupakan fungsi void yang dibutuhkan
Untuk memanggil class tersebut. bisa kita tambahkan Using di paling atas. setelah itu kita panggil form.load. tapi sebelumya kita perlu membuat fungsi untuk aksi yang akan dilakukan. sebagai contoh, buatlah project dan buat form dengan desain seperti dibawah ini
selanjutnya masuk ke program. dengan cara double klik form. maka akan muncul tampilan program. setelah itu buat fungsi tesAngka().
private void tesAksi()
{
MessageBox.Show("Sukses!!!");
}
lalu di Form_load, ketik script seperti dibawah ini
private void Form1_Load(object sender, EventArgs e)
{
DinamycKey din = new DinamycKey();
din.sign(this,tesAksi);
}
coba di run dan tekan enter di manapun posisi cursor berada(asal masih didalam form). kemudian klik enter
demikianlah artikel dari saya. semoga artikel ini bermanfaat.
Post a Comment for "PROGRAM FUNGSI ENTER DINAMIS MENGGUNAKAN BAHASA PEMROGRAMAN C#"