Gostaria de saber um comando!

9 respostas
D

Gostaria de saber como eu faço para clicar num botão e chamar outro frame. Por exemplo!
Eu tenho 2 frame aqui no primeiro eu tenho 1 botão que tem que chamar o meu outro frame qdo clicado!
como eu faço isso???

obrigado!

9 Respostas

aconstantino

Fala Du. Hast…

seuBotao.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { seuSegundoFrame.show(); } });

Guilherme_Silveira

O codigo do black hat faz exatamente o seguinte:

SEUBOTAO.ADICIONALISTENER

Qual listener?

AO CLICAR --> SEUFRAME.SHOW

Mit freundlichen Gruessen

Guilherme

D

Eu fiz exatamente isso:

jButton4.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

Frame2.show();         }

});

Mas esta dando os seguintes erros:

  • Invalid method declaration; return type required at line 126
  • <Identifier> expected at line 126

o q eh isso???
Eu uso o JBuilder 6 aki!
Obrigado!

Paulo_Silveira

a sintaxe desse seu trecho de código está completamente errada.
você está declarando um método entro de outro, é por causa disso.

não entendi o q vc quer fazer

urubatan

Não ta não :slight_smile:
você pode fazer isto, chama-se classe anonima :slight_smile:
e ele não estava declarando um metodo dentro de outro, estava declarando uma classe dentro de um metodo :slight_smile:

segue uma classe de exemplo que faz isto ai :slight_smile:

public class tmp extends javax.swing.JFrame{
        public tmp(){
                javax.swing.JButton btn = new javax.swing.JButton("Teste");
                btn.addActionListener(new java.awt.event.ActionListener(){
                        public void actionPerformed(java.awt.event.ActionEvent e){
                                tmp.this.show();
                        }
                });
        }
}

isto ai vai mostrar o mesmo frame :slight_smile:

mas é só chamar o show do outro :slight_smile:

não tenho certeza se não tem que ser:

tmp.this.OutroFrame.show();

mas funciona sim :slight_smile:

Paulo_Silveira

eh verdade, eh uma anonymous inner class, isso q da nao ler o codigo dirito

mas esse erro na linha 126, a linha 126 nao eh nehuma dessas q vc mandou certo?

manda ela!

D

meu codigo inteiro eh esse:
package untitled2;

import java.awt.<em>;

import javax.swing.JFrame;

import java.awt.event.</em>;

/**

  • <p>Title: </p>
  • <p>Description: </p>
  • <p>Copyright: Copyright © 2002</p>
  • <p>Company: </p>
  • @author unascribed
  • @version 1.0
    */

public class Frame1 extends JFrame {
Button button1 = new Button();

public Frame1() {

try {

jbInit();

}

catch(Exception e) {

e.printStackTrace();

}

}

public static void main(String[] args) {

Frame1 frame1 = new Frame1();

}

private void jbInit() throws Exception {

button1.setLabel(button1);

button1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(ActionEvent e) {
}
});
this.getContentPane().add(button1, BorderLayout.WEST);

}

}
Esse eh o codigo do meu Frame1, mas eu tenho 1 segundo Frame que eh o Frame2 no meu projeto e eu gostaria que qdo eu clicar no botão que tem nesse frame1, chamasse meu frame2!!
como eu faço???

Obrigado
desculpe pela newbisse! LOL

urubatan
o código que você mandou esta correto basta adicionar dentro de
button1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(ActionEvent e) {

}
});
a linha para mostrar o outro frame por exemplo:
Frame2 frm = new Frame2();
 frm.show();
D

Puts!

obrigado pessoal!

funcionou!

Criado 25 de setembro de 2002
Ultima resposta 27 de set. de 2002
Respostas 9
Participantes 5