I am new to java and am trying to create limitations for a textfield. I want thi
ID: 3702901 • Letter: I
Question
I am new to java and am trying to create limitations for a textfield. I want this method to allow negative and positive doubles/integers, how can that be done? Right now it allows the sign in the middle of the text as well.
private static void Restriction(JTextField text, int x) f String ttext.getText); if Cx1) text.addKeyListener(new KeyAdapterO 0verride public void keyTyped(KeyEvent e) char c e.getKeyChar); if (!(Character. isDigit(c) II (c-KeyEvent .VK.PERIOD) ?l (c-KeyEvent .VK.MTNUS))) { e.consume(; h;Explanation / Answer
One way to do this would be the replace any other character/text other than integer/double values with nothing, there by restructing the content that can be fille din the textbox.
This can be done using regualr expressions.
tField.textProperty().addListener(new ChangeListener<String>() {
//Overriding the parent class method
public void changed(ObservableValue <?extends String> observable, String oldText,String newText){
if (!newText.matches("\d*")) //if a non digit
{ tField.setText(newText.replaceAll("[^\d]", "")); // replace with nothing}}});
Hope this helped.
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.