Arama butonu
Bu konudaki kullanıcılar: 1 misafir
1
Cevap
930
Tıklama
0
Öne Çıkarma
jTextfield sadece harf ve boşluk kabul etmek
X
13 yıl
Teğmen
Konu Sahibi

merhaba
kullanıcının jTextfield alanına sadece harf ve boşluk birakabilmesini istiyorum diger durumlarda jOptionPane ile uyarı verdirmek istiyorum

internette araştırıdım ve birşey buldum denedim aşağıdaki şekilde

Kod:

if (!(Pattern.matches("^[a-zA-Z]+$", answerField1.getText())));
JOptionPane.showMessageDialog(null, "Please enter a valid character", "Error", JOptionPane.ERROR_MESSAGE);

fakat bu durumda hangi tuşa basarsam basayım uyarı vermekte .
bu konuda yardım istiyorum

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



U
13 yıl
Binbaşı

Bu tarz kısıtlamalarda JTextField'in setDocument metodunu kullanabilirsin. Tabi bu metodu kullanırken buraya bir adet Document nesnesi gönderiyor olman gerekiyor; bunun için de buraya PlainDocument sınıfından türeteceğin bir inline class yazman gerekebilir. Ya da eğer bu tarz başka JTextField'lerin de olacaksa ayrı bir sınıf olarak da yazıp kullanabilirsin, tercihine kalmış. Burada önemli olan insertString metodunu override etmen, bu metod içinde kullanıcının girdiği değer içinde istemediğin karakter olup olmadığını kontrol edebilirsin. Eğer istemediğin herhangi bir karakter yoksa metoda gelen parametreleri aynı şekilde super.insertString( ... ) şeklinde gönderip işlemini tamamlarsın, yok eğer istemediğin karakterler bulunduysa kullanıcıya mesaj gösterirsin, ya da göstermezsin ama giriş de yapılmamış olur. Belki de sadece JTextField'in border'larını kırmızı yaparak istenmeyen giriş yapıldığını kullanıcıya aktarmış olursun.
Bu anlattığımın örneği şu adreste bulunuyor, inceleyebilirsiniz. Yalnız buradaki örnekte kullanıcı belirli bir uzunlukta veri girmeye zorlanmış, siz bunu değiştirip harf ve boşluk kontrolü yapacak şekilde değiştirebilirsiniz.

Öneri: Size "Swing kütüphanesi ile yapacaksınız" denmediyse, JavaFX ile yapmayı deneyin derim. Hem yeni birşey denemiş olursunuz, hem de hocanızı etkilersiniz.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.