Los componentes normalmente se encuentran dentro de otros componentes. en el caso del boton, dentro de un contenedor o de la ventana.
si quieres pasarlo, pásaselo al crear la otra ventana, y que la otra ventana lo reciba en el contructor o por medio de algun metodo.
Por ejemplo este código impovisado:
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class Una extends JFrame implements ActionListener
{
JButton bot, bot2;
public Una()
{
this.setSize(800, 600);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
bot2=new JButton("Boton2");
this.getContentPane().add(bot2, BorderLayout.NORTH);
bot2.addActionListener(this);
bot=new JButton("boton");
this.getContentPane().add(bot, BorderLayout.CENTER);
bot.addActionListener(this);
}
public static void main(String args[])
{
Una o=new Una();
o.setVisible(true);
}
public void actionPerformed(ActionEvent arg0) {
if(arg0.getSource()==bot)
{
Hijo o=new Hijo(this, bot2);
o.setVisible(true);
}
else
if(arg0.getSource()==bot2)
JOptionPane.showMessageDialog(null, "HolaMundo");
}
class Hijo extends JDialog
{
public Hijo(JFrame padre, Component com)
{
super(padre, "ejemplo", true);
this.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
this.setSize(800, 600);
this.getContentPane().add(com, BorderLayout.SOUTH);
}
}
}
este ejemplo pasa el boton2 con todo y evento de accion y lo pone en el sur, o donde quiera.
No se si esto te sirva.