Resulset.....

di il
5 risposte

Resulset.....

Ciao a tutti!!! ho creato un programma con un db...la table è formato da nome, base, testo

nella JList faccio apparire solo il "nome" (cioè la list delle canzoni)

all'evento dovrei far partire sia il testo che la base relativi al nome clikkato...ma mi esce sempre la prima canzone ad anche il testo....il cod. è questo:

String sql = "SELECT base, testo FROM "+combo2.getSelectedItem();
	            			rs = stmt.executeQuery(sql);
	            			
	            			String testo = "" ; 
	            			String base = "";

	                        if (rs.next())  {
	                        	
	                        	removePreviousPlayer();                       	
	                        	testo = rs.getString("testo");  
	                        	base = rs.getString("base");
	                        	file = new File(base);		                        	
	                        	MediaLocator mrl = new MediaLocator( file.toURI().toURL() );	                            
	                            player = Manager.createPlayer(mrl);
	                            player.addControllerListener( new EventHandler() );
	                            player.start();	          
	            				File f = new File(testo);
	            				br = new BufferedReader(new FileReader(f));
	            				textArea.setText(null);
	            				String st = "";
	            	        	while((st=br.readLine()) != null){ 
	            	        		if (!st.startsWith(">")) { 
	            	        			textArea.append(st + "\n");
	            	        			textArea.setFont(new Font("times new roman", Font.BOLD, 30));            	        			
	            	        		} 
	            	        	}
	                        }
non riesco propri a capire dove sbaglio!!!!!!

5 Risposte

  • Re: Resulset.....

    Scusa ma non ho capito il tuo problema...sarà il caldo!!!
  • Re: Resulset.....

    Nella JList quando clicco sul "nome" mi parte sempre la prima canzone e mi esce sempre il primo testo....praticamente all'evento click del nome mi deve aggiungere alla textArea il testo e mi deve partire la canzone....ovviamente facendo parte della stessa row!!!!

    praticamente quando clikko su altre canzoni mi parte sempre il solito testo e canzone...


    spero di essere stato chiaro...
  • Re: Resulset.....

    Allora è il caldo....anche perchè dal tuo codice non riesco a capire.

    In pratica tu vuoi che l'ascoltatore sulla jlist riconosca la canzone selezionata e ne avvii l'esecuzione, giusto?

    Beh sinceramente non vedo la "difficoltà"....se hai implementato l'ascoltatore sul valueChanged() e ti fai dare l'elemento selezionato dalla stessa come lista.getSelectedValue() dovresti risolvere tutti i tuoi problemi
  • Re: Resulset.....

    Non sono ben aggiornato su mysql .....

    cmq come dovrei modificarlo???

    anzi ti do il cod. completo
    
    public void eventoClickList(){
    		 list.addMouseListener(new MouseAdapter() { 
    				public void mouseClicked(MouseEvent evt) { 
    	            	
    	                if (evt.getClickCount() == 2) { 
    	                	try {
    	            			Class.forName("org.gjt.mm.mysql.Driver");
    	            		}
    	            		catch (Exception exc) {
    	            			System.out.println("Errore - Driver jdbc non presente: "+ exc.getMessage());
    	            		}
    	            	
    	            		try {	            			 
    	            			conn = DriverManager.getConnection("jdbc:mysql://localhost/basi?user=root&password=root");
    	            			pstmt = (PreparedStatement) conn.prepareStatement("SELECT base, testo FROM "+list.getSelectedValue());	            			
    
    	            			stmt = conn.createStatement();
    	            			//per visualizzare il db
    	            			//String sql = "SELECT base, testo FROM "+combo2.getSelectedItem();
    	            			rs = pstmt.executeQuery();
    	            			
    	            			String testo = "" ; 
    	            			String base = "";
    	            			
    
    	                        if(rs.next())  {
    	                        	rs.relative(2);
    	                        	removePreviousPlayer();                       	
    	                        	testo = rs.getString(3);  
    	                        	base = rs.getString("base");
    	                        	file = new File(base);		                        	
    	                        	MediaLocator mrl = new MediaLocator( file.toURI().toURL() );	                            
    	                            player = Manager.createPlayer(mrl);
    	                            player.addControllerListener( new EventHandler() );
    	                            player.start();	          
    	            				File f = new File(testo);
    	            				br = new BufferedReader(new FileReader(f));
    	            				textArea.setText(null);
    	            				String st = "";
    	            	        	while((st=br.readLine()) != null){ 
    	            	        		if (!st.startsWith(">")) { 
    	            	        			textArea.append(st + "\n");
    	            	        			textArea.setFont(new Font("times new roman", Font.BOLD, 30));            	        			
    	            	        		} 
    	            	        	}
    	                        }	            			
    	            			stmt.close();
    	            			conn.close();
    	            		}
    	            		catch (Exception exc) {
    	            			System.out.println("Errore: "+ exc.getMessage());
    	            		}             		                	
    	                } 
    	            };	            
    				@SuppressWarnings("unused")
    				private ControllerListener ControllerListener() {
    					// TODO Auto-generated method stub
    					return null;
    				}
    	        });
    	 }
    
    aiutami!!!!
  • Re: Resulset.....

    Al momento non sono proprio disponibile perchè sommerso di lavoro...mi spiace.

    Comunque non è una questione di mysql, è una questione prettamente java.

    in pratica tu devi catturare l'evento che notifica il cambio di oggetto selezionato sulla jlista, prenderlo e mandarlo in pasto al player.
    spero di essere stato chiaro.
Devi accedere o registrarti per scrivere nel forum
5 risposte