Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 23
  1. #11
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    comodo contenitore per istruzioni simili, ma in fondo inutile e ti costringe ad un altro livello di derivazione, oltre ad una gestione della stessa nel caso in cui non hai aggiunto nessuna funzionalità!!!

    Il codice lo passi a rate?
    quando inserisci un articolo e valorizzi i 3 elementi come fai?
    Il punto è che dovresti passare da un model, che ti tiene una lista di elementi da visualizzare tramite la combo, in modo da non aggiungere elementi se già contenuti
    RTFM Read That F*** Manual!!!

  2. #12
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    339
    Guarda ti posto tutto il codice dell'ascoltatore (da completare) associato al bottone "SI" che aggiunge l'articolo

    codice:
    class ascoltatoreFNASI implements ActionListener{
    				
    				private FrameNotificaAggiungi Bsi;
    				
    				public ascoltatoreFNASI(FrameNotificaAggiungi Bsi){
    					this.Bsi=Bsi;
    					
    				}
    				
    				
    				public void actionPerformed(ActionEvent e){
    					
    					Articolo ArticoloAggiunto = new Articolo(infoTipo.getText(),infoMarca.getText(), infoModello.getText(), infoCodice.getText(), infoSettore.getText(), Integer.parseInt(infoQuantità.getText()), Double.parseDouble(infoPrezzo.getText()),infoCaratteristiche.getText());
    					String Aggiunta = ("Articolo Aggiunto in magazzino : " + " [ " +ArticoloAggiunto.toString() + " ]" +"\n");
    					EventiMagazzinoRiepilogo.append(Aggiunta);
    					contenitore.AggiungiArticolo(ArticoloAggiunto);
    					contenitore.Salva();
    					MerceSelezionataBox.addItem(ArticoloAggiunto.getTipo());
    					MarcaBox.addItem(ArticoloAggiunto.getMarca());
    					ModelloBox.addItem(ArticoloAggiunto.getModello());
    					
    					
    					Bsi.dispose();
    					
    				}
    				
    			}//ASCOLTATORE FNASI
    MerceSelezionataBox , MarcaBox e ModelloBox sono i nomi dei tre JComboBox che utilizzo.
    Per quanto riguarda EventiMagazzinoRiepilogo , questa è una "finestra" dove visualizzo (ogni volta che aggiungo un articolo) una stringa contenente informazioni riguardo L'articolo.


    Che intendi per model?

  3. #13
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    le swing in java lavorano in rispetto del pattern MVC, quindi hai un model, view e controller.
    Quando devi fare aggiunte/rimozioni in questo modo è sempre bene passare per il model, ogni combo ha un model che mantiene i dati associati alla tua vista. Devi prendere prima il model, da questo i dati contenuti, controllare se l'elemento è già presente e solo dopo aggiungerlo.

    Questo è un argomento che è molto riduttivo trattarlo in un post, qui hai un esempio

    Ti consiglio di fermarti e studiarti bene questi argomenti che non sono di facile comprensione ed uso
    RTFM Read That F*** Manual!!!

  4. #14
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    339
    Ok.

    Ti farò sapere sui miei progressi.

  5. #15
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    339
    Scusami un secondo.

    Potrei crearmi un model che utilizza per esempio una LinkedList per memorizzare i campi Tipo di Articolo....Giusto?

    Riferendomi all'esempio che mi hai postato :

    In linea di massima , potrei fare più o meno cosi?

    codice:
    class MerceSelezionataBoxModel extends AbstractListModel implements ComboBoxModel {
    
    LinkedList lista = new LinkedList();
    
    public void addElem(String elem){
    lista.add(elem);
    
    }
    
    JComboBox MerceSelezionataBox = new JComboBox(new MerceSelezionataBoxModel());
    Giusto?

  6. #16
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    ti basta anche un array di stringhe, non hai bisogno di una linked list.
    Se proprio vuoi una collection usa List
    RTFM Read That F*** Manual!!!

  7. #17
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    339
    Ok.

    Vediamo cosa esce fuori XD.

    Ciao

  8. #18
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    339
    Ciao.

    Ho fatto il Model per il primo JComboBox

    codice:
    package PacchettoA;
    
    import javax.swing.AbstractListModel;
    import javax.swing.ComboBoxModel;
    
    
    public class MerceSelezionataBoxModel extends AbstractListModel implements ComboBoxModel  {
    	
    	String [] ArrayMSB = new String [100];
    	int index = 0;
    	
    	String selection = null;
    
    	@Override
    	public Object getElementAt(int arg0) {
    		return ArrayMSB[arg0];
    	}
    
    	@Override
    	public int getSize() {
    		return ArrayMSB.length;
    	}
    
    	@Override
    	public Object getSelectedItem() {
    	    return selection;
    	}
    
    	@Override
    	public void setSelectedItem(Object arg0) {
    		selection = (String) arg0;
    		
    	}
    	
    	public void aggiungiEl (String elem){
    		ArrayMSB[index] = elem;
    		index++;
    		
    	}
    	
    	
    
    }

    poi l'ho passato al mio JComboBox

    codice:
    JComboBox MerceSelezionataBox = new JComboBox(new MerceSelezionataBoxModel());
    Ora ; come faccio ad aggiungere elementi al JComboBox ?

    se faccio addItem su MerceSelezionataBox non succede niente.....sulla console mi spuntano una marea di eccezioni.

    codice:
    MerceSelezionataBox.addItem(ArticoloAggiunto.getTipo());


    Mi aiuti?

  9. #19
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    prelevi il model (getModel di combobox), da questo fai getDataList e a questa lista aggiungi/rimuovi gli oggetti
    RTFM Read That F*** Manual!!!

  10. #20
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    339
    getDataList ?

    Mi sembra che non c'è questo metodo.

    Potresti spiegarti meglio ?

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.