|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: Dec 2012
Messaggi: 1
|
[JAVA] KeyListener e KeyEvent
Sto provando a scrivere un programma molto idiota (i primi esercizi) ma qualcosa non torna.
Alla pressione del tasto ALT-GR il programma dovrebbe entrare in un IF e stampare una Stringa, ma non lo fa. Entra solo nell'ELSE. Potreste aiutarmi a capire cosa manca nel mio codice? Codice:
public class EsercizioCinque extends Frame implements KeyListener { AscoltatoreFinestra asc = new AscoltatoreFinestra(); int b=0; String t =""; public static void main(String[] args) { EsercizioCinque ist = new EsercizioCinque(); } EsercizioCinque() { setBounds (200,200,900,500); setTitle ("Scegli carattere e colore"); setVisible(true); addWindowListener(asc); addKeyListener(this); } public void paint (Graphics g) { g.setFont(new Font ("Monospaced", Font.ITALIC, 20)); g.drawString("Premi ALT e l'iniziale di uno dei caratteri elencati per selezionarlo", 5, 50); g.drawString("D: DejaVu Sans", 5, 80); g.drawString("F: FreeMono", 5, 110); g.drawString("G: Garuda", 5, 140); g.drawString("K: KacstArt", 5, 170); System.out.println(b); if (b==1) { g.drawString("Premi CTRL e l'iniziale di uno dei colori elencati per selezionarlo",5,200); g.drawString("R: Rosso "+" V: Verde "+" G: Giallo "+" M: Magenta", 5, 230); // repaint(); } else if (b==2) g.drawString("HHHHHHHHHHHHHHHHH", 5, 300); else if (b==3) { g.drawString("Che cazzo hai scritto?", 5, 250); g.drawString("nnnnnn", 5, 300); } } public void keyPressed (KeyEvent e) { if (e.getKeyCode()==KeyEvent.VK_ALT_GRAPH) b = 1; else if (e.getKeyCode()== KeyEvent.VK_CONTROL) b = 2; else b = 3; System.out.println(e.getKeyCode()); System.out.println(b); } public void keyReleased(KeyEvent e) { } public void keyTyped(KeyEvent e) { t += e.getKeyChar(); // e.getKeyCode(); repaint(); } } |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:49.