Visualizzazione dei risultati da 1 a 8 su 8

Visualizzazione discussione

  1. #5
    Ecco il codice che ho scritto per quella funzione:

    codice:
    import java.awt.Point;
    import java.awt.event.MouseAdapter;
    import java.awt.event.MouseEvent;
    import java.io.BufferedReader;
    import java.io.FileReader;
    import java.io.IOException;
    import java.util.ArrayList;
    
    import javax.swing.JTable;
    
    public class DoubleClickListener extends MouseAdapter{
        private JTable t;
        private PanelAppFiltro paf;
        private MyMenuFrame padre;
        private Archivio arc;
        int idcliente;
        private int clickRow = 1 ;   //Questo campo contiene l'indice della riga su cui si
                                    //deve fare doppio click per aprire la finestra;
                                    //puoi anche passarlo nel costruttore o gestirlo in altro modo
        private ClienteAcquirente cliente;
        
        public DoubleClickListener(MyMenuFrame mf, Archivio arc, JTable t){
            this.arc = arc;
            this.padre = mf;
            this.t = t;
            
            //int idcliente;
            
        }
            
        public void mouseClicked(MouseEvent e){  //A noi interessa solo l'evento di click
            
              //arc.getNumContact();
              
               if(e.getClickCount() < 2) //se non è doppio click ritorno
                       return;
                   
               if(e.getButton() != MouseEvent.BUTTON1)//Considero solo i click del pulsante sinistro;
                       return;                              //se vuoi gestire l'evento anche se si fa dopppio
                                                          //click col tasto destro commenta questo if
                   
               int x = Integer.parseInt ((String)t.getValueAt(t.getSelectedRow(), 2));
                         
               System.out.println(x);
               
               try {
                    String str; // array che mi da il nome(prima stringa),
                                // cognome(seconda stringa) ecc..
    
    
                    BufferedReader in = new BufferedReader(new FileReader(
                        "ARCHIVIO.txt"));
                    // "ARCHIVIO.txt"));
                    int idcliente=1;
                    int cicliWhile = 0;
                    while ((str = in.readLine()) != null) {
                        cicliWhile++;
                        
                        if(cicliWhile == x){
                            String[] strcliente;
                            strcliente = str.split("#");
    
    
                            ClienteAcquirente cliente = new ClienteAcquirente(
                                    strcliente[0], strcliente[1], idcliente,
                                    strcliente[3], strcliente[4], 
                                    strcliente[5],strcliente[6], strcliente[7],Double.parseDouble(strcliente[8]), 
                                    strcliente[9], strcliente[10], strcliente[11]);
                            
                            arc.add(cliente);
                            System.out.print(str);
                            break;
                            
                        }
    
    
                    }
                    
                    in.close();
                
                }
                catch (IOException ev) {
    
    
                }
               
                this.padre.pannelloVisibile.setVisible(false);
                this.padre.pannelloVisibile = new PanelAppFiltro(arc, this.padre/*clickedRow+1*/);
                
                //System.out.println("asd "+this.padre.getNumContact(idcliente));
                this.padre.getContentPane().add(this.padre.pannelloVisibile);
                this.padre.pannelloVisibile.setVisible(true);
             
                  System.out.println("buonasera");  
                
               JTable t = (JTable)e.getSource();   //Ricavo la tabella che ha prodotto l'evento
        
               int clickedRow = t.rowAtPoint(e.getPoint()); //Calcolo la riga su cui si è fatto click
                   
                if(clickedRow != clickRow)   //Se non è la riga che mi interessa ritorno
                        return;               
               
                     
              //Potrei costruire la nuova finestra tipo popup???
                  
        }
    
    
        private int rowAtPoint(Point point) {
                return idcliente;
        }
        
        }
    Ultima modifica di LeleFT; 16-06-2015 a 14:08 Motivo: Aggiunti i tag CODE

Tag per questa discussione

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 © 2025 vBulletin Solutions, Inc. All rights reserved.