1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
public class IPDocumentFilter extends DocumentFilter{
public void insertString(DocumentFilter.FilterBypass fb,int offset,int length,String text,AttributSet attr){
// On ne peut insérer qu'un seul caractère à la fois :
if(text.length()>1) return;
// Si le caractère tapé n'est pas un point ni un chiffre, on annule la saisie :
if(text.charAt(0)!='.' && !Character.isDigit(text.charAt(0)) return;
// Je te laisse le soin d'implémenter ici la vérification de la validité des classes ( 0 -> 255 )
// Si tout est ok, on effectue la saisie :
try{
fb.insert(offset,length,text);
}catch(BadLocationException ble){
ble.printStackTrace();
}
}
// A toi d'implémenter de la même manière les méthodes remove ( suppression de texte ) et replace ( appelée lors d'un copier-coller ).
} |
Partager