Ho provato così:

codice:
private void initComponents() {
        
        jPanel1 = new javax.swing.JPanel();
        
        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        for (int i=1; i<=tablesNumber; i++) {
            JButton button= new JButton(Integer.toString(i));
            //button.setActionCommand(Integer.toString(i));
            button.addActionListener(new ActionListener(){
                    public void actionPerformed(ActionEvent e) {
                        new SingoloTavolo().setVisible(true);
                    }
            });
            jPanel1.add(button);
        }
        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 400, Short.MAX_VALUE)
            );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 300, Short.MAX_VALUE)
            );
        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
            );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
            );
        
        pack();
        setLocationRelativeTo(null);
    }// </editor-fold>//GEN-END:initComponents
Ma i pulsanti non si vedono :-/
Penso abbia a che fare con il fatto che viene impostato per il panel il GroupLayout...ma lì non c'è nessuna informazione di dove devono essere posizionati i pulsanti... è così?
Questo è codice generato in parte da NB e viene sempre messo il GroupLayout di default. E' molto comodo se devi disegnare la finestra posizionando bene tutto, però metterci le mani è un casino...