MaskedTextBox Kullanımı
1
●2.936
- 14-11-2010, 14:42:34
Mask Edit Box kontrolu, maske tanımlama sayesinde, kullanıcıyı sınırlayan veri girişi ve bunun sonucunda da biçimlenmiş veri çıkışı elde etmek için kullanılır. Örneğin telefon numaraları (212) 211 21 82 şeklinde bir formatta tutulur. Mask Edit Box kontrolu sayesinde ilave bir kod kullanmaya gerek kalmadan böylesi bir formatta veri girişi yaparken, yine aynı formatta, bu bilginin veri alanlarına kaydedilmesi sağlanabilmektedir. Veri giriş sınırlamaları "Mask" propertisi ile belirlenirken, kontrolun içeriği "Text" propertisi ile alınır. Bu kontrolun en çok kullanılan propertileri aşağıda açıklanmıştır: AutoTab: Tanımlanmış sınırlar içerisinde veri girişi tamamlandığında bir sonraki kontrola geçişi sağlar. (Örnek programda bu özellik kullanıldı). Format: Sınırlamasız ama formatlanmış veri girişi için kullanılır. Örneğin "#,##0" formatını seçerseniz. Bir sayısal değer girişi yaptıktan sonra MaskEditBox, sayıyı binler ayraçlı olarak yeniden düzenler. Kullanılacak olan formatlar önceden tanımlanmış olarak properti penceresinde yer almaktadır. Mask: Veri giriş maskesini tanımlamakta kullanılır. Örneğin telefon numarası girişi için şöyle bir maske kullanılır. "(999) 999 99 99". Maske tanımlamak için özel karakterler kullanılır. En çok kullanılanları şunlardır: # :Sadece rakam girişine izin verilir. , :Binler ayracı. : :Saat ayracı. / :Tarih ayracı. & :Kontrol karakterleri dışındaki karakterlerin girişine izin verilir (Ascii 32-126 ve 128-256 arası olanlar). > :Hemen sonrasındaki pozisyonun harfini büyültür. < :Hemen sonrasındaki pozisyonun harfini küçültür. 9 :Sadece rakam girişine izin verilir. ? :Sadece harf girişine izin verilir. Diğer : Bunların dışındaki her türlü sembol (örneğin (,-,),@ gibi karakterler) MaskEdit kutusunda olduğu gibi gösterilirler. Örnek programda bu karakterler kullanılarak değişik maske kullanımlarına yer verilmiştir. Text propertisi aracılığıyla MaskEdit kutusunun içeriğini ilgili veri alanlarına aktarabilirsiniz. Yine text propertisini kullanarak program içinden MaskEdit kutusunun içeriğini değiştirebilirsiniz ama bu konuda bir şeye dikkat etmeniz gerekiyor. Eğer tanımlı bir maske varsa önce bunu kaldırmalısınız. Aksi taktirde Run-time hata oluşacaktır. Bunu engellemek için text properisini aşağıdaki şekilde değiştirmek gerekir: Gecici = MaskEdBox1.Mask MaskEdBox1.Mask = "" MaskEdBox1.Text=YeniMetin MaskEdBox1.Mask=Gecici
Referans: http://vbasicmaster.com/vbbilgisi.asp?id=35&type=mak