Quote Originariamente inviata da andbin Visualizza il messaggio
Hai "disegnato" il resto della tua interfaccia con un editor "visuale"? (NetBeans?). Se sì, è probabile (non uso NetBeans) che "freedesign" stia a significare l'uso del layout manager GroupLayout di Swing, che è parecchio complesso (se così, guarda allora il codice generato ....).
E in tal caso non solo un layout manager "c'è" ma devi seguire le sue regole, ovvero indicare tutti i constraint (vincoli) necessari per fargli capire come deve stare il componente.
Si ho usato netbeans per disegnare il JPanel, ma ho risolto (grazie ai tuoi suggerimenti) ti posto il codice :
codice:
sidePanel.setLayout(null);
JLabel meseCorrente = new JLabel("Mese Corrente");      
      JLabel trimestre =  new JLabel ("Ultimi 3 Mesi");
      JLabel cerca = new JLabel("Cerca per Intervallo Date");
      JLabel DataInizio = new JLabel("Data Inizio");
      JLabel DataFine = new JLabel("Data Fine");
      search.setText("Cerca");
      sidePanel.add(meseCorrente);
      sidePanel.add(trimestre);
      sidePanel.add(cerca);
      sidePanel.add(DataIn);
      sidePanel.add(DataFin);
      sidePanel.add(DataInizio);
      sidePanel.add(DataFine);
      sidePanel.add(search);
      
      Insets insets = sidePanel.getInsets();
      Dimension size = meseCorrente.getPreferredSize();
     
      meseCorrente.setBounds(25 + insets.left, 5 + insets.top,
             size.width, size.height);
      
      size = trimestre.getPreferredSize();
      trimestre.setBounds(25 + insets.left, 30 + insets.top,
             size.width, size.height);
     size = cerca.getPreferredSize();
     cerca.setBounds(25 + insets.left, 60 + insets.top,
             size.width, size.height);
     
      size =DataIn.getPreferredSize();
      DataIn.setBounds(25 + insets.left, 90 + insets.top,
             size.width, size.height);
      
      size = DataInizio.getPreferredSize();
      DataInizio.setBounds(170 + insets.left, 90 + insets.top,
             size.width, size.height);
      
      size =DataFin.getPreferredSize();
      DataFin.setBounds(25 + insets.left, 130 + insets.top,
             size.width, size.height);
      size = DataFine.getPreferredSize();
      DataFine.setBounds(170 + insets.left, 130 + insets.top,
             size.width, size.height);
      
      size = search.getPreferredSize();
      search.setBounds(180 + insets.left, 170 + insets.top,
             size.width, size.height);
      
      
      sidePanel.validate();