[RESOLVIDO] Como eu passo para outra tela por um botão?

Olá estou criando uma aplicação com o Eclipse(usava o netbeans) e queria poder clicar com um botão e passar para outra tela
antes quando usava o netbeans o codigo que eu usava era

//
new Itens().setVisible(true);
dispose();
//
mas agora que eu estou usando o eclipse a unica maneira que consegui foi criar um getter na classe itens funcionou mas ficou muito grande considerando que vai ter varios botoes o codigo ficaria gigante, agora ficou assim

//
Itens.getFrame().setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Itens.getFrame().setVisible(true);
Itens.getFrame().setContentPane(new Itens());
Itens.getFrame().setExtendedState(6);
Itens.getFrame().setTitle(“TESTE ECLIPSE”);
Itens.getFrame().setIconImage(icone);
Itens.getFrame().setLayout(null);
frame.dispose();
//
tem algum jeito de deixar isso menor colocando esse codigo no class itens?
quando tentei ele apenas fechou o menu não abriu nada

1 curtida

Isso não é getter, essas propriedades são padrão do JFrame…

new Itens().setVisible(true);
dispose(); 

Isso aqui não é coisa de Netbeans, é do Java mesmo, porquê não abriu? Deu erro? O que houve?

ele só fechou a janela, também achei isso incomum,não estou usando o WindowBuilder estou fazendo a interface na unha por que eu quero colocar background sem ser pela jlabel e so sei fazer isso fazendo tudo na unha, eu acho que é por causa disso, ele nem me da um erro ele só fecha

Você tem o que nessa nova tela? Tem algum try catch sem printar o erro?

não tem nehum try catch tem apenas umas labels e um botao pra voltar pro menu que não abre quando aperto tambem

Tira o dispose();, se não der erro na erro de abrir ainda, mostra o código de Itens()

package telas;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class Itens extends JPanel {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	static JFrame frame = new JFrame();
	public Itens() {
        initComponents();
        this.setLayout(null);
    }
	private void initComponents() {

        jLabel1 = new javax.swing.JLabel();
        jLabel9 = new javax.swing.JLabel();
        jLabel10 = new javax.swing.JLabel();
        jLabel11 = new javax.swing.JLabel();
        jLabel12 = new javax.swing.JLabel();
        jLabel13 = new javax.swing.JLabel();
        jLabel14 = new javax.swing.JLabel();
        jButton1 = new javax.swing.JButton();
        jLabel15 = new javax.swing.JLabel();
        jLabel8 = new javax.swing.JLabel();
        jLabel16 = new javax.swing.JLabel();
        jLabel18 = new javax.swing.JLabel();
        jLabel17 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        jLabel6 = new javax.swing.JLabel();
        jLabel7 = new javax.swing.JLabel();
        jLabel5 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        
        jLabel1.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel1.setText("Itens");
        add(jLabel1);
        jLabel1.setBounds(620, 0, 100, 43);

        jLabel9.setFont(new java.awt.Font("Arial", 1, 36));
        jLabel9.setText("Probabilidade de Drop");
        add(jLabel9);
        jLabel9.setBounds(470, 340, 390, 43);

        jLabel10.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel10.setForeground(new java.awt.Color(0, 102, 0));
        jLabel10.setText("Item Incomum: 50%");
        add(jLabel10);
        jLabel10.setBounds(500, 440, 320, 43);

        jLabel11.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel11.setForeground(new java.awt.Color(153, 153, 153));
        jLabel11.setText("Item Comum: 70%");
        add(jLabel11);
        jLabel11.setBounds(500, 390, 299, 43);

        jLabel12.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel12.setForeground(new java.awt.Color(51, 153, 255));
        jLabel12.setText("Item Raro: 30%");
        add(jLabel12);
        jLabel12.setBounds(520, 480, 250, 43);

        jLabel13.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel13.setForeground(new java.awt.Color(255, 204, 51));
        jLabel13.setText("Item Lendário 5%");
        add(jLabel13);
        jLabel13.setBounds(510, 580, 290, 43);

        jLabel14.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel14.setForeground(new java.awt.Color(102, 0, 153));
        jLabel14.setText("Item Épico: 15%");
        add(jLabel14);
        jLabel14.setBounds(520, 530, 270, 43);

        jButton1.setFont(new java.awt.Font("Arial", 0, 24));
        jButton1.setText("MENU");
        jButton1.setContentAreaFilled(false);
        jButton1.setFocusable(false);
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });
        add(jButton1);
        jButton1.setBounds(0, 0, 187, 56);

        jLabel15.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel15.setForeground(new java.awt.Color(102, 0, 153));
        jLabel15.setText("(Roxo)");
        add(jLabel15);
        jLabel15.setBounds(670, 240, 110, 43);

        jLabel8.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel8.setForeground(new java.awt.Color(255, 204, 51));
        jLabel8.setText("(Dourado)");
        add(jLabel8);
        jLabel8.setBounds(670, 290, 170, 43);

        jLabel16.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel16.setText("Lendário &6");
        add(jLabel16);
        jLabel16.setBounds(470, 290, 200, 43);

        jLabel18.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel18.setText("Épico = &5");
        add(jLabel18);
        jLabel18.setBounds(490, 240, 180, 43);

        jLabel17.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel17.setForeground(new java.awt.Color(51, 153, 255));
        jLabel17.setText("(Azul Marinho)");
        add(jLabel17);
        jLabel17.setBounds(670, 190, 235, 43);

        jLabel4.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel4.setText("Raro = &3");
        add(jLabel4);
        jLabel4.setBounds(500, 190, 163, 43);

        jLabel3.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel3.setForeground(new java.awt.Color(0, 102, 0));
        jLabel3.setText("(Verde Escuro) ");
        add(jLabel3);
        jLabel3.setBounds(650, 140, 260, 43);

        jLabel6.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel6.setText("Incomum = &2");
        add(jLabel6);
        jLabel6.setBounds(410, 140, 240, 43);

        jLabel7.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel7.setText("Comum = &7 ");
        add(jLabel7);
        jLabel7.setBounds(470, 90, 222, 43);

        jLabel5.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel5.setForeground(new java.awt.Color(153, 153, 153));
        jLabel5.setText("(Cinza)");
        add(jLabel5);
        jLabel5.setBounds(690, 90, 120, 43);

        jLabel2.setFont(new java.awt.Font("Arial", 1, 36));
        jLabel2.setText("Cor e Nome dos Itens");
        add(jLabel2);
        jLabel2.setBounds(470, 40, 370, 43);

	}
	private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
        new Menu().setVisible(true);
        frame.dispose();
    }
	public static void main(String[] args) {
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setContentPane(new Itens());
        frame.setVisible(true);
        frame.setExtendedState(6);
        frame.setTitle("TESTE ECLIPSE");
    }
	
	private javax.swing.JButton jButton1;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel10;
    private javax.swing.JLabel jLabel11;
    private javax.swing.JLabel jLabel12;
    private javax.swing.JLabel jLabel13;
    private javax.swing.JLabel jLabel14;
    private javax.swing.JLabel jLabel15;
    private javax.swing.JLabel jLabel16;
    private javax.swing.JLabel jLabel17;
    private javax.swing.JLabel jLabel18;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JLabel jLabel7;
    private javax.swing.JLabel jLabel8;
    private javax.swing.JLabel jLabel9;

}

Entendi, tem alguns problemas aí:

Vc setou sua janela como JPanel, mas o correto é JFrame

public class Itens extends JPanel {}

Vc adicionou Itens() no contentPane, fazendo que o seu programa nunca iniciasse, iria ficar sempre adicionando, o que causaria erro.

frame.setContentPane(new Itens());

Outro problema é q vc declarou um JFrame, isso nao é necessario:

static JFrame frame = new JFrame();

No final ficou:

//import com.kingaspx.DownloadVideo.menu.Menu;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class Itens extends JFrame {

    private static final long serialVersionUID = 1L;

    public Itens() {
        initComponents();
    }

    private void initComponents() {
        jLabel1 = new JLabel();
        jLabel9 = new JLabel();
        jLabel10 = new JLabel();
        jLabel11 = new JLabel();
        jLabel12 = new JLabel();
        jLabel13 = new JLabel();
        jLabel14 = new JLabel();
        jButton1 = new JButton();
        jLabel15 = new JLabel();
        jLabel8 = new JLabel();
        jLabel16 = new JLabel();
        jLabel18 = new JLabel();
        jLabel17 = new JLabel();
        jLabel4 = new JLabel();
        jLabel3 = new JLabel();
        jLabel6 = new JLabel();
        jLabel7 = new JLabel();
        jLabel5 = new JLabel();
        jLabel2 = new JLabel();

        jLabel1.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel1.setText("Itens");
        add(jLabel1);
        jLabel1.setBounds(620, 0, 100, 43);

        jLabel9.setFont(new java.awt.Font("Arial", 1, 36));
        jLabel9.setText("Probabilidade de Drop");
        add(jLabel9);
        jLabel9.setBounds(470, 340, 390, 43);

        jLabel10.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel10.setForeground(new java.awt.Color(0, 102, 0));
        jLabel10.setText("Item Incomum: 50%");
        add(jLabel10);
        jLabel10.setBounds(500, 440, 320, 43);

        jLabel11.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel11.setForeground(new java.awt.Color(153, 153, 153));
        jLabel11.setText("Item Comum: 70%");
        add(jLabel11);
        jLabel11.setBounds(500, 390, 299, 43);

        jLabel12.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel12.setForeground(new java.awt.Color(51, 153, 255));
        jLabel12.setText("Item Raro: 30%");
        add(jLabel12);
        jLabel12.setBounds(520, 480, 250, 43);

        jLabel13.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel13.setForeground(new java.awt.Color(255, 204, 51));
        jLabel13.setText("Item Lendário 5%");
        add(jLabel13);
        jLabel13.setBounds(510, 580, 290, 43);

        jLabel14.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel14.setForeground(new java.awt.Color(102, 0, 153));
        jLabel14.setText("Item Épico: 15%");
        add(jLabel14);
        jLabel14.setBounds(520, 530, 270, 43);

        jButton1.setFont(new java.awt.Font("Arial", 0, 24));
        jButton1.setText("MENU");
        jButton1.setContentAreaFilled(false);
        jButton1.setFocusable(false);
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });
        add(jButton1);
        jButton1.setBounds(0, 0, 187, 56);

        jLabel15.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel15.setForeground(new java.awt.Color(102, 0, 153));
        jLabel15.setText("(Roxo)");
        add(jLabel15);
        jLabel15.setBounds(670, 240, 110, 43);

        jLabel8.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel8.setForeground(new java.awt.Color(255, 204, 51));
        jLabel8.setText("(Dourado)");
        add(jLabel8);
        jLabel8.setBounds(670, 290, 170, 43);

        jLabel16.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel16.setText("Lendário &6");
        add(jLabel16);
        jLabel16.setBounds(470, 290, 200, 43);

        jLabel18.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel18.setText("Épico = &5");
        add(jLabel18);
        jLabel18.setBounds(490, 240, 180, 43);

        jLabel17.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel17.setForeground(new java.awt.Color(51, 153, 255));
        jLabel17.setText("(Azul Marinho)");
        add(jLabel17);
        jLabel17.setBounds(670, 190, 235, 43);

        jLabel4.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel4.setText("Raro = &3");
        add(jLabel4);
        jLabel4.setBounds(500, 190, 163, 43);

        jLabel3.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel3.setForeground(new java.awt.Color(0, 102, 0));
        jLabel3.setText("(Verde Escuro) ");
        add(jLabel3);
        jLabel3.setBounds(650, 140, 260, 43);

        jLabel6.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel6.setText("Incomum = &2");
        add(jLabel6);
        jLabel6.setBounds(410, 140, 240, 43);

        jLabel7.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel7.setText("Comum = &7 ");
        add(jLabel7);
        jLabel7.setBounds(470, 90, 222, 43);

        jLabel5.setFont(new java.awt.Font("Arial", 0, 36));
        jLabel5.setForeground(new java.awt.Color(153, 153, 153));
        jLabel5.setText("(Cinza)");
        add(jLabel5);
        jLabel5.setBounds(690, 90, 120, 43);

        jLabel2.setFont(new java.awt.Font("Arial", 1, 36));
        jLabel2.setText("Cor e Nome dos Itens");
        add(jLabel2);
        jLabel2.setBounds(470, 40, 370, 43);

        setLayout(null);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setExtendedState(6);
        setTitle("TESTE ECLIPSE");
    }

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
        new Menu().setVisible(true);
        dispose();
    }

    public static void main(String[] args) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Menu().setVisible(true);
            }
        });
    }

          private JButton jButton1;
    private JLabel jLabel1;
    private JLabel jLabel10;
    private JLabel jLabel11;
    private JLabel jLabel12;
    private JLabel jLabel13;
    private JLabel jLabel14;
    private JLabel jLabel15;
    private JLabel jLabel16;
    private JLabel jLabel17;
    private JLabel jLabel18;
    private JLabel jLabel2;
    private JLabel jLabel3;
    private JLabel jLabel4;
    private JLabel jLabel5;
    private JLabel jLabel6;
    private JLabel jLabel7;
    private JLabel jLabel8;
    private JLabel jLabel9;

}
1 curtida

bom eu setei minha janela como JPanel pra poder usar o metodo paintComponent() porque é o unico jeito que eu sei de adicionar um background redimensionavel, eu que não sabia isso podia acontecer, tem alguma forma de adicionar um background redimensionavel sem setar a janela como JPanel?

Cria um Panel separado e adiciona no seu JFrame.

Pra adicionar vc faria:

JPanel panelAlgumaCoisa = new SeuCustomPanel();
add(panelAlgumaCoisa);
panelAlgumaCoisa.setBounds(240, 130, 330, 30);
1 curtida

agora consegui aqui, ultima pergunta, como eu faço para o panel ficar sempre do tamanho do frame?
no caso seu eu colocar o setBounds() ele vai ficar sempre daquele tamanho eu quero que ele fique do tamanho do frame

Seta seu layout como BorderLayout, depois adiciona ele no centro:

add(panel, BorderLayout.CENTER);
1 curtida

cara de verdade valeu mesmo, eu ia refazer o projeto na unha mas agora eu consigo fazer isso no meu projeto do netbeans, muito obrigado

1 curtida

Tamo junto.

1 curtida