Prova a dare un'occhiata a questo codice che ho scritto.
Per qualsiasi chiarimento, sono a disposizione.
Ti dico prima cosa fa: apre una finestra, se digiti sulla tastiera, vedi apparire al centro della finestra i caratteri che hai digitato (tranne il BackSpace e altri caratteri speciali, che non ho gestito).
Se premi sul pulsantino di chiusura della finestra, questa (sorprendentemente!) si chiude :gren:
Ciao.
Lele
codice:
import java.awt.*;
import java.awt.event.*;
public class Finestrella extends Frame implements KeyListener {
private Label lblTesto;
private final int WIDTH = 300;
private final int HEIGHT = 300;
private class QuitListener implements WindowListener {
public void windowClosing(WindowEvent we) { System.exit(0); }
// I seguenti metodi non mi servono, ma devo implementarli (vuoti)
public void windowResized(WindowEvent we) {}
public void windowOpened(WindowEvent we) {}
public void windowIconified(WindowEvent we) {}
public void windowDeiconified(WindowEvent we) {}
public void windowClosed(WindowEvent we) {}
public void windowActivated(WindowEvent we) {}
public void windowDeactivated(WindowEvent we) {}
}
public Finestrella() {
setLayout(null);
lblTesto = new Label();
lblTesto.setBounds(0, 100, WIDTH, 30);
lblTesto.setBackground(Color.cyan);
add(lblTesto);
addKeyListener(this);
addWindowListener(new QuitListener() );
setSize(WIDTH, HEIGHT);
setVisible(true);
}
public void keyTyped(KeyEvent ke) {
lblTesto.setText( lblTesto.getText()+ke.getKeyChar() );
}
public void keyPressed(KeyEvent ke) {} // Implementato vuoto (necessario per KeyListener)
public void keyReleased(KeyEvent ke) {} // Implementato vuoto (necessario per KeyListener)
public static void main(String [] args) {
Finestrella fn = new Finestrella();
}
}