allora io ho dichiarato il panel ma non posso aggiungerlo al jframe dinamicamente. Riporto un pò di codice

codice:
			{
				mainDesktopPanel = new JDesktopPane();
				
				mainDesktopPanel.setBackground(new java.awt.Color(0, 128, 255));
				mainDesktopPanel.setDoubleBuffered(true);
				mainDesktopPanel.setVisible(true);
				mainDesktopPanel.setEnabled(true);
				mainDesktopPanel.setAutoscrolls(true);
				{
					titolo = new JLabel();
					mainDesktopPanel.add(titolo);
					titolo.setText("\"Conto Corrente Bancario\"");
					titolo.setBounds(84, 7, 672, 63);
					titolo
						.setFont(new java.awt.Font("Monotype Corsiva", 2, 72));
					titolo.setBackground(new java.awt.Color(255, 0, 0));
				}
				{
					corsoLaurea = new JLabel();
					mainDesktopPanel.add(corsoLaurea);
					corsoLaurea
						.setText("Informatica e Tecnologie per la Produzione del Software");
					corsoLaurea.setBounds(91, 77, 672, 35);
					corsoLaurea.setFont(new java.awt.Font("Verdana", 0, 24));
					corsoLaurea.setBackground(new java.awt.Color(64, 0, 128));
				}
				{
					logoUni = new JLabel();
					mainDesktopPanel.add(logoUni);
					logoUni.setIcon(new ImageIcon(getClass().getClassLoader()
						.getResource("stemma.jpg")));
					logoUni.setBounds(336, 126, 175, 168);
				}
				{
					autore = new JLabel();
					mainDesktopPanel.add(autore);
					autore.setText("Autore:");
					autore.setBounds(7, 364, 133, 28);
					autore.setFont(new java.awt.Font("Arial", 0, 20));
				}
				{
					nome = new JLabel();
					mainDesktopPanel.add(nome);
					nome.setText("Marcello Melcarne 455689");
					nome.setBounds(77, 364, 308, 28);
					nome.setFont(new java.awt.Font("Arial", 0, 20));
				}
			}
			{
				MenuBar = new JMenuBar();
				setJMenuBar(MenuBar);
				MenuBar.setPreferredSize(new java.awt.Dimension(689, 36));
				MenuBar.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
				{
					databaseButton = new JButton();
					FlowLayout databaseButtonLayout = new FlowLayout();
					MenuBar.add(databaseButton);
					databaseButton.setLayout(databaseButtonLayout);
					databaseButton.setText("Conn.Database");
					databaseButton.setIcon(new ImageIcon(getClass().getClassLoader().getResource("icon_sql_32px.gif")));
					databaseButton.setToolTipText("Apri la connessione con il Database");
					databaseButton.setBorder(BorderFactory.createTitledBorder(""));
					databaseButton.setSize(176, 36);
					databaseButton.setPreferredSize(new java.awt.Dimension(229, 36));
					databaseButton.setBackground(new java.awt.Color(192,192,192));
					databaseButton.addMouseListener(new MouseAdapter() {
						public void mousePressed(MouseEvent evt) {
							databaseButtonMousePressed(evt);
						}
					});
				}
///MENUBAR

			{
				MenuBar = new JMenuBar();
				setJMenuBar(MenuBar);
				MenuBar.setPreferredSize(new java.awt.Dimension(689, 36));
				MenuBar.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
				{
					databaseButton = new JButton();
					FlowLayout databaseButtonLayout = new FlowLayout();
					MenuBar.add(databaseButton);
					databaseButton.setLayout(databaseButtonLayout);
					databaseButton.setText("Conn.Database");
					databaseButton.setIcon(new ImageIcon(getClass().getClassLoader().getResource("icon_sql_32px.gif")));
					databaseButton.setToolTipText("Apri la connessione con il Database");
					databaseButton.setBorder(BorderFactory.createTitledBorder(""));
					databaseButton.setSize(176, 36);
					databaseButton.setPreferredSize(new java.awt.Dimension(229, 36));
					databaseButton.setBackground(new java.awt.Color(192,192,192));
					databaseButton.addMouseListener(new MouseAdapter() {
						public void mousePressed(MouseEvent evt) {
							databaseButtonMousePressed(evt);
						}
					});
				}
				{
					creaConto = new JMenu();
					MenuBar.add(creaConto);
					creaConto.setText("Apri Conto");
					creaConto.setBorder(BorderFactory.createTitledBorder(""));
					creaConto.setSize(150, 36);
					creaConto.setPreferredSize(new java.awt.Dimension(189, 35));
					creaConto.add(new JMenuItem ("Conto con Fido"));
				}
				{
					operazioniConto = new JMenu();
					MenuBar.add(operazioniConto);
					operazioniConto.setText("Operazioni");
					operazioniConto.setToolTipText("Seleziona la operazione da effettuare sul Conto");
					operazioniConto.setBorder(BorderFactory.createTitledBorder(""));
					operazioniConto.setSize(150, 36);
					operazioniConto.setPreferredSize(new java.awt.Dimension(189, 35));
					operazioniConto.add(new JMenuItem ("Accredita"));
					operazioniConto.add(new JMenuItem ("Preleva"));
					operazioniConto.add(new JMenuItem ("Imposta Fido"));
					operazioniConto.add(new JMenuItem ("Chiudi Conto"));
				}
				{
					visualizzaMenu = new JMenu();
					MenuBar.add(visualizzaMenu);
					visualizzaMenu.setText("Visualizza");
					visualizzaMenu.setBorder(BorderFactory.createTitledBorder(""));
					visualizzaMenu.setSize(150, 36);
					visualizzaMenu.setPreferredSize(new java.awt.Dimension(196, 35));
					visualizzaMenu.add(new JMenuItem ("Conto"));
					visualizzaMenu.add(new JMenuItem ("Lista Conti"));
					visualizzaMenu.add(new JMenuItem ("Percentuale Conti con Fido"));
					visualizzaMenu.add(new JMenuItem ("Transazioni Conto"));
				}
				{
					salva_carica = new JMenu();
					MenuBar.add(salva_carica);
					salva_carica.setText("Salva/Carica");
					salva_carica.setBorder(BorderFactory.createTitledBorder(""));
					salva_carica.setSize(150, 36);
					salva_carica.setPreferredSize(new java.awt.Dimension(245, 35));
					//si attiva quando si effettua la connessione al Database
					salva_carica.setEnabled(false);
					salva_carica.add(new JMenuItem ("Salva"));
					salva_carica.add(new JMenuItem ("Carica"));
				}
			}

private void databaseButtonMousePressed(MouseEvent evt) {
getContentPane().add(mainDesktopPanel, BorderLayout.CENTER);
		this.repaint();
	}
non sò a cosa sia dovuto.ho paura che un Panel non si possa aggiungere dinamicamente.il metodo definito alla fine è quello che quando richiamato dovrebbe aggiungermi il panel al JFrame,ma non lo fà!!! Dove sbaglio?