hey, ive got a little problem with my formatted TextArea.
i would like to make a TextArea which cant be left empty and cant contain any spaces, ONLY numbers.
i´ve tried it and its not possible anymore to put anything else than numbers, but it shouldnt be possible to delete the numbers without replacing them. How can i do that?
Here is my code:
And the Runtime-Error message:
i would like to make a TextArea which cant be left empty and cant contain any spaces, ONLY numbers.
i´ve tried it and its not possible anymore to put anything else than numbers, but it shouldnt be possible to delete the numbers without replacing them. How can i do that?
Here is my code:
geschwindigkeit.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e) { JPanel erklärung = new JPanel(new GridLayout(2,1)); JPanel erklärung2 = new JPanel(new GridLayout(1,2)); JFrame fenster = new JFrame("Geschwindigkeit"); try {//Damit nur Zahlen möglich sind MaskFormatter formatter = new MaskFormatter("**"); formatter.setValidCharacters("0123456789"); tf = new JFormattedTextField(formatter); JTextArea textArea = new JTextArea(); fenster.add(erklärung); textArea.setEditable(false); textArea3.setEditable(true); textArea.setBackground(Color.ORANGE); textArea3.setBackground(Color.WHITE); textArea.setFont(new Font("Times New Roman",1,22)); //Größe einstellen textArea.append(" Geschwindigkeit festlegen"); textArea3.append(""); JButton eingabe = new JButton ("Eingabe"); eingabe.setPreferredSize(new Dimension(100,25)); tf.setText(""); erklärung2.add(tf); erklärung2.add(eingabe); erklärung.add(textArea); erklärung.add(erklärung2); fenster.setSize(400, 100); fenster.setLocation(320, 500); fenster.setVisible(true); fenster.setResizable(false); fenster.pack(); eingabe.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent e) { if (tf.getText() == " "){ geschwindigkeit2 = 0; } else{ geschwindigkeit2 = Integer.parseInt(tf.getText()); } } }); } catch (Exception e2) { } } });
And the Runtime-Error message:
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: " " at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Integer.parseInt(Integer.java:481) at java.lang.Integer.parseInt(Integer.java:527) at FirstGUI$2$1.actionPerformed(FirstGUI.java:459) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) at java.awt.Component.processMouseEvent(Component.java:6504) at javax.swing.JComponent.processMouseEvent(JComponent.java:3321) at java.awt.Component.processEvent(Component.java:6269) at java.awt.Container.processEvent(Container.java:2229) at java.awt.Component.dispatchEventImpl(Component.java:4860) at java.awt.Container.dispatchEventImpl(Container.java:2287) at java.awt.Component.dispatchEvent(Component.java:4686) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422) at java.awt.Container.dispatchEventImpl(Container.java:2273) at java.awt.window.dispatchEventImpl(window.java:2713) at java.awt.Component.dispatchEvent(Component.java:4686) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:707) at java.awt.EventQueue.access$000(EventQueue.java:101) at java.awt.EventQueue$3.run(EventQueue.java:666) at java.awt.EventQueue$3.run(EventQueue.java:664) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87) at java.awt.EventQueue$4.run(EventQueue.java:680) at java.awt.EventQueue$4.run(EventQueue.java:678) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:677) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105) at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)