G
Guest
Gast
Hallo,
hab ein kleines Programm geschrieben wo man in JTextField's zahlen von 1 bis 10 eingeben soll. Hab die JTextFields mit (2) definiert, so dass man nur zwei stellen für 1 bis 10, eingeben kann. Beim ausführen des Programms kann man aber mehr als nur zwei Stellen eingeben!
1. Wie kann man es machen das nur zwei Ziffern (1-10) in das JTextField eingegeben werden können?
2. Das sofort eine Fehlermeldung, bzw. beim berechnen Button, erscheint, die einen bei Falscheingabe, z.B. Buchstaben und Zahlen >10 usw. hinweist?
3. Der Löschen Button funktinoniert, sprich bei betätigung die Werte aus den JTextFields wieder gelöscht werden?
Kann mir vielleicht jemand weiterhelfen?
hab ein kleines Programm geschrieben wo man in JTextField's zahlen von 1 bis 10 eingeben soll. Hab die JTextFields mit (2) definiert, so dass man nur zwei stellen für 1 bis 10, eingeben kann. Beim ausführen des Programms kann man aber mehr als nur zwei Stellen eingeben!
1. Wie kann man es machen das nur zwei Ziffern (1-10) in das JTextField eingegeben werden können?
2. Das sofort eine Fehlermeldung, bzw. beim berechnen Button, erscheint, die einen bei Falscheingabe, z.B. Buchstaben und Zahlen >10 usw. hinweist?
3. Der Löschen Button funktinoniert, sprich bei betätigung die Werte aus den JTextFields wieder gelöscht werden?
Kann mir vielleicht jemand weiterhelfen?
Code:
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.*;
public class HaptikBewertung extends JFrame implements ActionListener{
public JButton clear, run;
public int Temperatur, Matbesch, Oberflstrk, Feuchtigkeit, Festigk, Masse;
public JTextField JTTemp, JTMat, JTOber, JTFeucht, JTFest, JTMasse;
public HaptikBewertung(String title){
super(title);
setSize(400,400);
setBackground(Color.lightGray);
setLocation(150,150);
setLayout(new GridLayout(7,2));
JLabel Temp = new JLabel(" Temperaturwert: ");
add(Temp);
JTTemp = new JTextField(2);
add(JTTemp);
JLabel Mat = new JLabel(" Materialbeschaffenheit: ");
add(Mat);
JTMat = new JTextField(2);
add(JTMat);
JLabel Ober = new JLabel(" Oberflächenstruktur: ");
add(Ober);
JTOber = new JTextField(2);
add(JTOber);
JLabel Feucht = new JLabel(" Feuchtigkeit: ");
add(Feucht);
JTFeucht = new JTextField(2);
add(JTFeucht);
JLabel Fest = new JLabel(" Festigkeit: ");
add(Fest);
JTFest = new JTextField(2);
add(JTFest);
JLabel Masse = new JLabel(" Masse: ");
add(Masse);
JTMasse = new JTextField(2);
add(JTMasse);
JButton clear = new JButton("Löschen");
add(clear);
clear.addActionListener(this);
JButton run = new JButton("Berechnen");
add(run);
run.addActionListener(this);
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent event){
System.exit(0);
};
});
//pack();
setVisible(true);
}
public void actionPerformed(ActionEvent event){
StringTokenizer Werta = new StringTokenizer(JTTemp.getText());
Temperatur = Integer.parseInt(Werta.nextToken());
System.out.println(Temperatur);
StringTokenizer Wertb = new StringTokenizer(JTMat.getText());
Matbesch = Integer.parseInt(Wertb.nextToken());
System.out.println(Matbesch);
StringTokenizer Wertc = new StringTokenizer(JTOber.getText());
Oberflstrk = Integer.parseInt(Wertc.nextToken());
System.out.println(Oberflstrk);
StringTokenizer Wertd = new StringTokenizer(JTFeucht.getText());
Feuchtigkeit = Integer.parseInt(Wertd.nextToken());
System.out.println(Feuchtigkeit);
StringTokenizer Werte = new StringTokenizer(JTFest.getText());
Festigk = Integer.parseInt(Werte.nextToken());
System.out.println(Festigk);
StringTokenizer Wertf = new StringTokenizer(JTMasse.getText());
Masse = Integer.parseInt(Wertf.nextToken());
System.out.println(Masse);
if (event.getSource()==clear){
removeAll();
}
}
public static void main (String[] args){
new HaptikBewertung("Bewertung von Haptikmessungen");
}
}