Skip to main content

Penggunaan EditMask karakter angka dan literal (Belajar Lazarus #4)

Setelah sebelumnya kita belajar komponen Edit dan LabeledEdit kini saat belajar komponen MaskEdit yang terdapat dalam tab palette Additional, komponen MaskEdit dipakai untuk memformat data masukan, maskedit dapat mengontrol validasi data yang dimasukkan user. Jika kita mengklik tombol [...] pada properti EditMask dari komponen MaskEdit maka akan tampil Input Mask Editor seperti gambar di bawah ini:
Input-Mask-Editor

Input Mask terdiri dari tiga bagian yang dipisahkan oleh karakter titik koma. Ketiga field tersebut adalah:
  • Field pertama adalah Mask, disinilah akan kita atur format data masukan.
  • Filed kedua Save Literal Characters adalah karakter yang menyatakan apakah karakter literal pada mask akan disimpan dalam data, tinggal check Save Literal Character, atau dengan mengetikkan langsung dalam editmask jika 1 artinya disimpan dan 0 artinya tidak cara merubahnya.
  • Field ketiga Character for Blanks, adalah karakter untuk menyatakan spasi dalam mask.


contoh penggunaan mask angka

Mari kita buat aplikasi baru dengan tampilan seperti gambar di atas simpan ke folder baru dengan nama folder maskedit, nama project pmaskedit, nama unit umaskedit.
Isi properti sebagai berikut:
Maskedit1
Name: MELeadBlank
EditMask: !0000000000

Maskedit2
Name: METrailBlank
EditMask: 0000000000
Maskedit3
Name: METglliteral9
EditMask: 99/99/9999;1;_

Maskedit4
Name: METglnonliteral9
EditMask: 99/99/9999;0;_

Maskedit5
Name: METglliteral0
EditMask: 00/00/0000;1;_

Maskedit6
Name: METglnonliteral0
EditMask: 00/00/0000;0;_

Button1
Name: BCekliteral9
Caption: Cek Hasil

Button2
Name: BCeknonliteral9
Caption: Cek Hasil

Button3
Name: BCekliteral0
Caption: Cek Hasil

Button4
Name: BCeknonliteral0
Caption: Cek Hasil

LabeledEdit1
Name: LELiteral9
EditLabel.Caption: Dengan Literal 
Text:     {kosong}

LabeledEdit2
Name: LENonLiteral9
EditLabel.Caption: Tanpa Literal 
Text:     {kosong}

LabeledEdit3
Name: LELiteral0
EditLabel.Caption: Dengan Literal 
Text:     {kosong}

LabeledEdit4
Name: LENonLiteral0
EditLabel.Caption: Tanpa Literal 
Text:     {kosong}

Label1
Caption: EditMask !0000000000

Label2
Caption: EditMask 0000000000

Label3
Caption: EditMask 99/99/9999;1;_

Label4
Caption:  EditMask 99/99/9999;0;_

Label5:
Caption: EditMask 00/00/0000;1;_

Label6:
Caption: EditMask 00/00/0000;0;_

Form1
Name: FMaskedit1
Caption: Penggunaan Maskedit Bagian ke-1



Pada Object Inspector tab Event isikan sebagai berikut:
FMaskedit1
OnCreate:
  MELeadBlank.Text:='1234';
  METrailBlank.Text:='1234';



BCekliteral9
OnClick: LELiteral9.Text:=METglliteral9.Text;

BCeknonliteral9OnClick: LENonliteral9.Text:=METglnonliteral9.Text;

BCekliteral0OnClick: LELiteral0.Text:=METglliteral0.Text;

BCeknonliteral0OnClick: LENonLiteral0.Text:=METglnonliteral0.Text;

Jika sudah selesai semua jangan lupa simpan, lalu jalankan aplikasinya dengan menekan F9. Selanjutnya akan tampil seperti gambar di bawah ini.
Penggunaan maskedit bagian ke-1

Penjelasan Program
Pada postingan kali ini aku akan menunjukkan fungsi karakter ! (tanda seru), 0 (nol) dan 9 (sembilan) dalam mask dan contoh yang digunakan saat ini adalah untuk menyaring input untuk memasukkan tanggal / contoh mask untuk tanggal.

Karakter ! (tanda seru) artinya jika karakter ! ada pada mask, karakter-karakter yang sudah didefinisikan sebelumnya pada program akan dinyatakan sebagai leading blank / karakter kosong diletakkan di depan, jika tidak ada ! maka dinyatakan sebagai trailing blank / karakter kosong diletakkan di belakang.

Karakter 0 (nol) artinya hanya menerima karakter numerik (0 sampai 9) dan wajib ada.
Karakter 9 (sembilan) artinya hanya menerima karakter numerik (0 sampai 9) tetap tidak harus ada.

Coba sekarang isikan tanggal 01/08/1985 lalu klik tombol cek hasil, maka hasilnya akan seperti gambar di atas. Selanjutnya coba isi tanggal dengan 1/8/85 bandingkan bagaimana hasilnya! Setelah anda merubah pada edit mask 00/00/0000 maka akan muncul eror seperti gambar di bawah ini jika mengisinya tidak lengkap seperti mask.

Sebagai catatan yang dimaksud karakter literal adalah karakter-karakter diluar karakter yang berfungsi sebagai mask. Pada postingan kali ini kita telah menggunakan karakter / (slash) yang merupakan karakter literal. Sedangkan karakter mask yang sudah kita pelajari saat ini adalah karakter !, 0 dan 9. Terima kasih, setelah kita belajar Edit Mask denga karakter angka dan literal, selanjutnya nanti akan kita bahas tentang karakter yang lain.

Comments

Popular posts from this blog

Inilah Kelebihan dan Kekurangan SQLite

  Artikel ini akan membahas tentang, tipe data yang didukung SQLite,  kelebihan dari SQLite, kekurangan SQLite, kapan sebaiknya ketika menggunakan SQLite dan kapan sebaiknya kita tidak menggunakan SQLite. Merujuk dari id.wikipedia.org disebutkan bahwa SQLite merupakan sebuah sistem manajemen basisdata relasional yang bersifat ACID-compliant dan memiliki ukuran pustaka kode yang relatif kecil, ditulis dalam bahasa C. SQLite merupakan proyek yang bersifat public domain yang dikerjakan oleh D. Richard Hipp . SQLite adalah perpustakaan menakjubkan yang disematkan di dalam aplikasi yang menggunakan. Sebagai database mandiri, berbasis file, SQLite menawarkan serangkaian menakjubkan alat untuk menangani segala macam data dengan jauh lebih sedikit kendala dan kemudahan dibandingkan dengan host, proses berbasis (server) database relasional. Ketika sebuah aplikasi menggunakan SQLite, integrasi bekerja dengan panggilan fungsional dan langsung dibuat untuk file memegang data (yaitu ...

Aplikasi Demo Penggunaan Memo ComboBox ListBox dan CheckBox (Belajar Lazarus #14)

Mempelajari Listbox yang Owner-Draw Lazarus telah kita bahas pada artikel sebelumnya, sekarang mari kita buat Aplikasi Demo Penggunaan Memo ComboBox ListBox dan CheckBox . CheckBox memberi dua pilihan (bahkan tiga pilihan) kepada pemakai, properti yang berkaitan dengan pilihan pada CheckBox yaitu: Ubah property Checked menjadi True agar CheckBox dipilih secara default. Ubah AllowGrayed menjadi True agar CheckBox mempunyai 3 pilihan, yaitu checked , unchecked dan grayed . Property State menyatakan apakah CheckBox dalam keadaan checked ( cbChecked ), unchecked ( cbUnchecked ), atau grayed ( cbGrayed ). Memo dipakai untuk memasukkan data yang lebih dari satu barus. ListBox menampilkan daftar dan Anda dapat memilih item-itemnya: Property Items dibakai untuk mengisi pilihan-pilihan yang mungkin. ItemIndex menyatakan item yang dipilih.  MultiSelect menyatakan apakah dapat memilih lebih dari satu pilihan pada saat yang bersamaan. Sorted menyatakan apakah daftar terurut sec...

Penggunaan MessageDlg Lazarus Free Pascal

Mari belajar Penggunaan MessageDlg pada Lazarus Free Pascal . MessageDlg berfungsi menampilkan pesan di tengah layar, kelebihan funsi MessageDlg dibandingkan dengan ShowMessage yang telah kita pelajari sebelumnya adalah kita bisa menentukan sendiri Caption dari kotak pesan, menentukan tipe gambar dan tipe tombol yang digunakan. Syntax Penggunaan MessageDlg Lazarus Free Pascal: MessageDlg('Isi Caption','Isi Pesan',Tipe Gambar,Tipe Tombol,0) Contoh: MessageDlg('Peringatan','Isikan banyak barang!',mtWarning,[mbOk],0) Maka tampilannya akan seperti gambar di bawah ini: Jenis-jenis Tipe Gambar: mtWarning : Tanda seru berwarna kuning. mtError : Tanda silang warna merah. mtInformation : Huruf i warna biru. mtConfirmation :  Tanda tanya warna biru. mtCustom : Tidak ada gambar. Jenis-jenis Tipe Tombol: mbYes : Tombol dengan tulisan 'Yes'. mbNo : Tombol dengan tulisan 'No'. mbOK : Tombol dengan tulisan 'OK'. mbCan...