Anfänger86
Grünschnabel
Hallo, ich habe folgenden Code:
Ich soll die Methode processFocusEvent überschreiben...
Wenn der Fokus auf dem Textfeld ist, soll auf der Konsole "Fokus" ausgegeben werden...
Aber ich mit getID() geht das net... ich müsste da ja sowas haben wie getSource() == textfield , aber dann passt der rest nicht mehr dazu...
kriege ich das so doch irgendwie hingebastelt oder geht das so nicht?
Code:
import java.awt.*;
import java.awt.event.*;
public class EA4_2 extends Frame {
private int textfield1=0;
private String textfield2;
EA4_2(String titel) {
super(titel);
setSize(400, 400);
setVisible(true);
add(label);
add(panel);
MeinWindowAdapter meinWa = new MeinWindowAdapter();
addWindowListener(meinWa);
init();
}
Label label = new Label();
Panel panel = new Panel();
TextField textfield = new TextField("0", 20);
Button button1 = new Button("Inkrementieren");
Button button2 = new Button("Dekrementieren");
public void init() {
panel.add(textfield);
textfield.addFocusListener(new MyTextField());
panel.add(button1);
button1.addActionListener (new MyActionListener());
panel.add(button2);
button2.addActionListener (new MyActionListener());
add(panel);
panel.add(textfield);
}
class MyTextField extends TextField implements FocusListener {
public void processFocusEvent(FocusEvent e) {
super.processFocusEvent(e);
if(e.getID()==FocusEvent.FOCUS_GAINED) {
System.out.println("Fokus");
}
}
public void focusLost(FocusEvent e) {}
public void focusGained(FocusEvent e) {}
}
class MeinButton {
}
class MyActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
if (e.getSource() == button1) {
++textfield1;
textfield2=("" +textfield1);
textfield.setText(textfield2);
}
if (e.getSource() == button2) {
--textfield1;
textfield2=("" +textfield1);
textfield.setText(textfield2);
}
}
}
class MeinWindowAdapter extends WindowAdapter {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}
public static void main (String [] args) {
new EA4_2("EA4_2 FocusEvent");
}
}
Ich soll die Methode processFocusEvent überschreiben...
Wenn der Fokus auf dem Textfeld ist, soll auf der Konsole "Fokus" ausgegeben werden...
Aber ich mit getID() geht das net... ich müsste da ja sowas haben wie getSource() == textfield , aber dann passt der rest nicht mehr dazu...
kriege ich das so doch irgendwie hingebastelt oder geht das so nicht?