Olá amigos, estou desenvolvendo um projeto em Java que utiliza o Jframe porém o problema é que ao fazer algumas alterações no código todos os elementos sumiram, por sorte tenho um backup, porém acho que seria interessante saber como fazer essa importação. Lembro que uma vez eu precisei criar uma nova classe com os mesmos códigos de outra e nesse caso todos os componentes foram importados automaticamente ao clicar na aba design ( uso Eclipse ) vou deixar o código abaixo:
import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.Point;
import java.awt.SystemColor;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.DefaultComboBoxModel;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import java.awt.BorderLayout;
public class Tela extends JFrame {
public Tela() {
getContentPane().setLayout(null);
}
private JPanel contentPane;
private JLabel lblTorre1_maior;
private JLabel lblTorre1_medio;
private JLabel lblTorre1_menor;
private Torre torre[] = new Torre[3];
private JButton btnTrocar;
private JComboBox origem;
private JComboBox destino;
private JLabel cronometro;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Tela frame = new Tela();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*
*/
private JLabel torre1;
private void inicializa(){
torre[0] = new Torre(new int[]{0,1,2});
torre[1] = new Torre();
torre[2] = new Torre();
}
public void Tela11() {
setTitle("Torre Han\u00F3i");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 250, 615, 296);
contentPane = new JPanel();
contentPane.setBackground(SystemColor.text);
contentPane.setForeground(SystemColor.desktop);
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
contentPane.add(getLblTorre1_maior());
contentPane.add(getLblTorre1_medio());
contentPane.add(getLblTorre1_menor());
contentPane.add(getBtnTrocar());
origem = new JComboBox();
origem.setModel(new DefaultComboBoxModel(new String[] {"Torre 1\t", "Torre 2", "Torre 3"}));
origem.setBounds(32, 230, 104, 20);
contentPane.add(origem);
destino = new JComboBox();
destino.setModel(new DefaultComboBoxModel(new String[] {"Torre 1\t", "Torre 2", "Torre 3"}));
destino.setBounds(476, 230, 98, 20);
contentPane.add(destino);
JLabel lblOrigem = new JLabel("Origem");
lblOrigem.setBounds(35, 205, 46, 14);
contentPane.add(lblOrigem);
JLabel lblNewLabel = new JLabel("Destino");
lblNewLabel.setBounds(476, 205, 46, 14);
contentPane.add(lblNewLabel);
JButton btnNewButton = new JButton("Iniciar");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
}
});
btnNewButton.setBounds(238, 11, 89, 23);
contentPane.add(btnNewButton);
contentPane.add(getCronometro());
contentPane.add(getTorre1());
inicializa();
configuraLabels();
}
private void configuraLabels(){
for(int a = 0; a < 3; a++){
for(int b = 0; b < 3; b++){
posicionaLabel(a, b, torre[a].getValores()[b]);
}
}
}
private void posicionaLabel(int torre, int posicao, int valor){
if (valor != -1){
JLabel label = new JLabel();
int ajuste=0;
switch(valor){
case 0:
label = lblTorre1_maior;
ajuste = 0;
break;
case 1:
label = lblTorre1_medio;
ajuste = 25;
break;
case 2:
label = lblTorre1_menor;
ajuste = 50;
break;
}
int x = 10 + (torre * 200) + ajuste;
int y = 140 - (posicao * 25);
label.setLocation(x,y);
}
}
private JLabel getLblTorre1_maior() {
if (lblTorre1_maior == null) {
ImageIcon icone = new ImageIcon("maior.jpg");
lblTorre1_maior = new JLabel(icone);
lblTorre1_maior.setBounds(10, 140, 114, 23);
}
return lblTorre1_maior;
}
private JLabel getLblTorre1_medio() {
if (lblTorre1_medio == null) {
ImageIcon icone = new ImageIcon("meio.jpg");
lblTorre1_medio = new JLabel(icone);
lblTorre1_medio.setBounds(32, 106, 64, 23);
}
return lblTorre1_medio;
}
private JLabel getLblTorre1_menor() {
if (lblTorre1_menor == null) {
ImageIcon icone = new ImageIcon("menor.jpg");
lblTorre1_menor = new JLabel(icone);
lblTorre1_menor.setBounds(60, 90, 14, 23);
}
return lblTorre1_menor;
}
private JButton getBtnTrocar() {
if (btnTrocar == null) {
btnTrocar = new JButton("Trocar");
btnTrocar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if(torre[origem.getSelectedIndex()].top() > torre[destino.getSelectedIndex()].top()){
torre[destino.getSelectedIndex()].push(torre[origem.getSelectedIndex()].pop());
configuraLabels();
}else if(torre[origem.getSelectedIndex()].top() < torre[destino.getSelectedIndex()].top()){
JOptionPane.showMessageDialog(null, "Movimento Inválido!");
}
else if (lblTorre1_menor.getLocation()== new Point (260,90)){
if (lblTorre1_medio.getLocation()==new Point (260,115)){
if (lblTorre1_maior.getLocation()==new Point (260,140)){
JOptionPane.showMessageDialog(null,"Parabens você venceu");
}
}
}
}
}
);
btnTrocar.setBounds(255, 230, 80, 21);
}
return btnTrocar;
}
private JLabel getCronometro() {
if (cronometro == null) {
cronometro = new JLabel("New label");
cronometro.setBounds(364, 15, 141, 14);
}
return cronometro;
}
private JLabel getTorre1() {
if (torre1 == null) {
ImageIcon icone = new ImageIcon("Base 100x100.jpg");
torre1 = new JLabel(icone);
torre1.setSize(114, 91);
torre1.setLocation(193, 72);
torre1.setBackground(SystemColor.desktop);
}
return torre1;
}
}