Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [Java] KeyListener

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,965

    [Java] KeyListener

    Non mi funge

    codice:
    // IMPORT ....
    
    public class kera extends JFrame implements ActionListener,KeyListener{
    //variabili di classe....
    
    kera(){
    //.....
    	   
    //imposto i menu
    
    //aggiungo gli actionlistener
    
    	
    
       testo[testo_]= new JTextArea(22,65);
        jsp[testo_]=new JScrollPane(testo[testo_],ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
        jtb = new JTabbedPane();
        JPanel pan = new JPanel();
        //aggiungo keylistener al pannello (si puo'?)
        pan.addKeyListener(this); 
    	
    	//aggiungo pannello
    	setContentPane(pan);
    	
    	//aggiungo il pannello e aggiungo un oggetto sul primo tab
    	jtb.addTab("Untitled" , jsp[testo_]); 
        getContentPane().add(jtb); 
    }	
    
    public void actionPerformed(ActionEvent ae){
    	Object found = ae.getSource();
    //.......
    }
    
    //definisco i metodi essenziali per l'interfaccia KeyListener
    public void keyTyped(KeyEvent kt){
    	
    }
    public void keyPressed(KeyEvent kp){
    	
    }
    public void keyReleased(KeyEvent kr){
    int id = kr.getID();
    //   
       if(id==KeyEvent.VK_ENTER){
      		testo_++;
    		testo[testo_]= new JTextArea(22,65);
            jsp[testo_]=new JScrollPane(testo[testo_],ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
    		jtb.addTab("Untitled" , jsp[testo_]); 
    		jtb.setSelectedIndex(testo_);	
       }	
    }
    
    	public static void main(String[] args){
    .......
    	}
    	
    	
    }
    help me please


  2. #2
    [..]
    public void keyReleased(KeyEvent kr){
    int id = kr.getID();
    [..]

    devi richiamare il metodo getKeyCode() non getID();
    codice:
    [..]
    public void keyReleased(KeyEvent kr){
    int id = kr.getKeyCode(); 
    [..]

    ciauuu.
    ► ☺ ◄

  3. #3
    Invece di far implementare alla classe l'interfaccia KeyListener potresti utilizzare classi anonime...
    codice:
    JButton b = new JButton();
    b.addKeyListener(new KeyAdapter(){
     /**
     * @see java.awt.event.KeyAdapter#keyPressed(KeyEvent)
     */
     public void keyPressed(KeyEvent evt) {
       if(evt.getKeyCode()==KeyEvent.VK_ENTER || 
          evt.getKeyCode()==KeyEvent.VK_SPACE){
    	doClick();
       }
     }
    });
    ► ☺ ◄

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,965
    anche con getKeyCode() non va
    forse l'errore puo' stare nell'aggiunta dell'evento al pannello?

  5. #5
    a prima vista non mi sembra ci siano altri errori e l'aggiunta del listener è corretta.
    intanto... prova a vedere se entri nel metodo keyReleased e prova a vedere che valore hai per il keyCode.
    ps : puoi provare anche con getKeyChar();
    ► ☺ ◄

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,965
    ok grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.