Ciao, sono finalmente riuscito a trovare un po di tempo per tornare al progetto e ho fatto un po di modifiche; ho deciso di utilizzare un JTabbedPane e devo dire che in effetti è visivamente molto più bello di quello che avevo in mente io.

Ora però ho un nuovo piccolo problema.. Riesco a inserire una sola pagina
Ti faccio vedere il codice:

codice:
public class Operazione_scelta extends JPanel implements ItemListener, ActionListener {

	public JTabbedPane Pagina; 
	public JFrame jfp;
    public Container cont_jfp;
	JButton Fatto= new JButton("Fatto"), Fine= new JButton("Fine");
    String campi[];	
	String nomi_pagine[] = {"Accesso", "Assegnata", "Docente", "Laboratorio", 
					"Locale", "Permesso", "Personale", "Postazione_L", "Postazione_V", 
					"Prenotazione", "Risorsa", "Studente", "Tipo", "Utente", "Esci"}; 


	/** Crea una nuova finestra composta da pagine **/
	public void crea_finestra_con_pagine(String Titolo) {

		int alt=200, lung=800;
		jfp= Crea_finestra.crea_JF("Menù --> " + Titolo, lung, alt);
		cont_jfp = jfp.getContentPane();		


	//Per ogni pagina, va in Inserisci e utilizza uno Switch Case per conoscere 
	//i campi che andranno a popolare la finestra 
		for (int i=0; i<nomi_pagine.length; i++) {
			campi= Inserisci.Trova_campi(i);
			Aggiungi_pagina(nomi_pagine[i], campi, jfp);
		}		

//		campi= Inserisci.Trova_campi(0);
//		Aggiungi_pagina(nomi_pagine[0], campi, jfp);
	}
	
	
	//Aggiunge una nuova pagina al frame
	public void Aggiungi_pagina(String Titolo, String[] campi, JFrame jfp) { 

		JPanel panel= Crea_finestra.crea_JP(jfp);
		JLabel Lcampi[]= new JLabel[campi.length];
		JTextField Tcampi[]= new JTextField[campi.length];
		
		panel.setLayout(new GridLayout(campi.length+1, 2));
	    
	    /** 
		*	assegno al label "i" un testo
		*	aggiungo il label al pannello
 		*	faccio la stessa cosa con la casella di testo
		**/
		for(int j= 0; j<campi.length; j++) {
			Lcampi[j] = new JLabel(campi[j]);
			panel.add(Lcampi[j]);
			Tcampi[j]= new JTextField("inserire testo...");
			panel.add(Tcampi[j]);
		}


		Fatto= new JButton("Fatto");
		Fine= new JButton("Esci");
		panel.add(Fatto);	
		panel.add(Fine);		
		Fatto.addActionListener(this);
		Fine.addActionListener(this);
		
		Pagina= new JTabbedPane();		
		Pagina.addChangeListener(new TabListener()); 
		Pagina.addTab(Titolo, panel); 
	        jfp.getContentPane().add(Pagina); 
		jfp.pack(); 
		panel.setVisible(true);
	}
	
	public void actionPerformed (ActionEvent ae) {
		if(ae.getSource()== Fatto) {
			System.out.println("Hai premuto su Fatto.");		
		}	
		if(ae.getSource()== Fine) {
			this.setVisible(false);
			System.exit(0);
		}
	}

	public void itemStateChanged(ItemEvent ae) {		
	}
}
Ho provato a inserire una pagina singola e ci sono riuscito senza troppi problemi utilizzando quelle che ora sono righe commentate
codice:
//		campi= Inserisci.Trova_campi(0);
//		Aggiungi_pagina(nomi_pagine[0], campi, jfp);
Ma se cerco di mettere anche le altre, succede che per meno di mezzo secondo vedo diverse finestre che si aprono e poi il programma termina senza segnalare nulla.
Hai idea di dove sia l'errore?