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

    Problema con JTabbedPane e Vari JPanel

    Salve a tutti ragazzi,
    ho una necessità.

    Ho una applicazione strutturata in questo modo.

    JFrame --> Principale che contiene tutta l'applicazione.

    JMenù --> Il menù che consente di passare da una finestra ad un altra.

    JPanel --> I JPanel che cambiano a seconda del menù scelto.

    Ogni JPanel, ha questa struttura, nella parte NORTH del JPanel, c'è una JToolBar e nel Center, ci sono tutti i componenti swing.

    Fin qui tutto ok, funziona tutto.

    Ora però dovrei fare in modo che uno stesso JPanel, lo devo poter vedere più volte, attraverso un JTabbedPane.

    Sono riuscito attraverso il seguente codice, ha avere il mio

    JFrame
    JMenu
    JTabbedPane con due Shede che contengono tutte e due lo stesso JPanel.

    Lato grafico si vede tutto perfettamente, la cosa che non va invece è che funzionano solo le funzionalità dell'ultima scheda la seconda.

    Nel JPanel ci sono delle tabelle con l'evento doppio Click, se clicco sulle tabella della PRIMA scheda, eseguo le operazioni, ma lo fa nella seconda scheda.

    Dove sbaglio????

    Posto un pò di codice.

    codice:
    //CREO IL TABBED-PANE
    JTabbedPane jtbExample = new JTabbedPane();
    			//MAINPANEL2 è LA CLASSE CHE GENERA IL JPANEL		
    					MainPanel2 bilanciamentoRicetta = new MainPanel2();
    					bilanciamentoRicetta.creaSwing();
    					toolBar = bilanciamentoRicetta.inviaToolBar();
    					
    					
    					JPanel panelContenitore = new JPanel(new BorderLayout());
    					panelContenitore.add(toolBar,BorderLayout.NORTH);
    					panelContenitore.add(bilanciamentoRicetta,BorderLayout.CENTER);
    					jtbExample.addTab("One", null, panelContenitore, "Tab 1");
    					
    					
    					MainPanel2 bilanciamentoRicetta2 = new MainPanel2();
    					bilanciamentoRicetta2.creaSwing();
    					JToolBar toolBar2 = bilanciamentoRicetta2.inviaToolBar();
    					JPanel panelContenitore2 = new JPanel(new BorderLayout());
    					panelContenitore2.add(toolBar2,BorderLayout.NORTH);
    					panelContenitore2.add(bilanciamentoRicetta2,BorderLayout.CENTER);
    					jtbExample.addTab("Due", null, panelContenitore2, "Tab 2");
    					
    					getContentPane().add(jtbExample,BorderLayout.CENTER);
    					getContentPane().validate();
    sapete dove magari sbaglio???

  2. #2
    Utente di HTML.it L'avatar di progAnd
    Registrato dal
    Jan 2012
    Messaggi
    119
    La cosa più probabile bilanciamentoRicetta e bilanciamentoRicetta2 condividono degli oggetti; quindi quando lavori su uno, i risultati si ripercutono sull'altra.

    Ciao

  3. #3
    Salve sono riuscito a capire quale era il problema. In pratica io utilizzavo table model statici eliminando questo ha iniziato a funzionare correttamente. Grazie a tutti

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.