Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [JAVA] Aiuto con JButton

    Salve a Tutti.... riassumendo il mio problema, non riesco ad "individuare" il pulsante premuto in una serie di pulsanti creati dinamicamente!!

    Vi posto parte del codice......
    codice:
    .....
    private JButton buTool;
    .....
    
    public PanelBollette( ..... ) {
    	
      	for (int x=0; x<idBolletta.length; x++) {
                 ......
     
            // CREO I PANNELLI
      	JPanel panX = pannello(idBolletta[x],numVoci);
      	addTab(idBolletta[x],panX);
      	}
    }
    
    public JPanel pannello( .... ) {
    	// estraggo dalla stringa il numero della bolletta senza l'anno
    	int x = Integer.parseInt(idBolletta.substring(0,idBolletta.indexOf("/")));
            .......
            buTool = new JButton(new ImageIcon("images\\ico\\Group.png"));
    	buTool.setName(idBolletta);
    	buTool.setText("BOLLETTA "+buTool.getName());
            buTool.addActionListener(new ActionBtn());
    	toolPan.add(buTool);
    
            return panX;
    }
    
    // ACTIONLISTENER PULSANTI
    public class ActionBtn implements ActionListener {
    	public void actionPerformed (ActionEvent e) {
    			
    		System.err.println("\n\tAZIONE BOTTONE!!! getName!!?"+ buTool.getName());
    			
    			
    		if (buTool.getName().equals("01/2012")) System.out.println(buTool.getName());
    		if (buTool.getName().equals("02/2012")) System.out.println(buTool.getName());
    		if (buTool.getName().equals("03/2012")) System.out.println(buTool.getName());
    	}
    }
    I bottoni creati nei diversi pannelli, benché assegni loro il nome al componente dinamicamente e diverso uno dall'altro, al momento che vi clicco sopra, restituisce unicamente il nome dell'ultimo pulsante creato, anche se si preme sul primo!!!

    Io avrei bisogno di riconoscere il pulsante premuto e il JPanel che lo contiene, a dire il vero risalire ad almeno due o tre JPanel che contengono la grafica sino al pulsante!!!

    Grazie a Tutti.

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    il problema è che non usi le API
    codice:
    public void actionPerformed (ActionEvent ae) {
      JButton sourceButton = (JButton)ae.getSource();
      System.out.println(sourceButton.getName()); // o getQuelCheTiPare
    }
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Grazie Andrea, gentilissimo

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.