Guardar dados...--->URGENTE UMA RESPOSTA

Ah, eu nao me preocupei em sair, já que estou usando o Eclipse. Aí eu terminava por ele. Mas se vc kiser que ele saia, use o método setDefaultCloseOperation e coloque EXIT_ON_CLOSE…

Ficaria algo assim?:

private void jButton_SimActionPerformed(java.awt.event.ActionEvent evt) { setDefaultCloseOperation; }

[quote=Cattus]Ficaria algo assim?:

private void jButton_SimActionPerformed(java.awt.event.ActionEvent evt) { setDefaultCloseOperation; }[/quote]

Olha Fiz um exemplo às pressa e sem IDE se não funcionar pelo menos vai te dar uma idéia de como é o funcionamento do Listener. Caso vc queira adicionar vários botões e ações em uma mesma classe é só alterar a herança para uma classe genérica “Object”, isto é, não usar o extends.

De qualquer forma o interessante é entender e qualquer coisa é so dar um grito :stuck_out_tongue: :stuck_out_tongue: :stuck_out_tongue: :stuck_out_tongue: !!!

public class Botao extends JButton implements ActionListener{ 


	JFrame content = null;
	
	
	public Botao(JFrame cont){
		super("Detona");
		this.addActionListener(this); // Como implemento ActionListener então essa classe herda
		this.setSize(60, 30);
		this.setVisible(true);
		
		content = cont;
	}

//**********Aqui digo pro nosso amiguinho fechar a janela enviada em sua criação como parâmetro	
	public void actionPerformed(ActionEvent e) {
		if(e.getSource() == this){
			content.dispose();
		}
		
	}

}

Um Grande Abraço!!!

o que é o detona?

super("Detona");   

[quote=Cattus]o que é o detona?

super("Detona");   

Estou passando um parâmetro para o construtor da Classe que foi extendida nessa situação não vem ao caso, só coloquei para colocar alguma coisa mesmo :smiley: :smiley: :smiley: :smiley:

O fato é que como estou herdando JButon, para acessar seu construtor eu utilizo o método super(); que deve ser a primeira coisa a se colocar no código. Depende de como vc implementa isso.

De resto vc conseguiu entender e implementar?

Um grande Abraço!!!

Entendi mais ou menos…
fiz assim…
ainda da dois erros…
valeu a ajuda…´ :slight_smile:

[code]/*

  • Sair.java
  • Created on 18 de Dezembro de 2008, 15:30
    */

package Gui;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

/**
*

  • @author Daniela
    */
    public class Sair extends javax.swing.JFrame {
    private Object frame;

    /** Creates new form Sair */
    public Sair() {
    initComponents();
    }

    /** This method is called from within the constructor to

    • initialize the form.
    • WARNING: Do NOT modify this code. The content of this method is
    • always regenerated by the Form Editor.
      */
      public class Botao extends Sair implements ActionListener{

    Sair content = null;

    public Botao(Sair cont){
    super( );
    this.addActionListener(this); // Como implemento ActionListener então essa classe herda
    this.setSize(60, 30);
    this.setVisible(true);

     content = cont;   
    

    }

//**********Aqui digo pro nosso amiguinho fechar a janela enviada em sua criação como parâmetro
public void actionPerformed(ActionEvent e) {
if(e.getSource() == this){
content.dispose();
}

}

    public void actionPerformed(ActionEvent e) {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    private void addActionListener(Botao aThis) {
        throw new UnsupportedOperationException("Not yet implemented");
    }

}
public class Botao extends Sair implements ActionListener{

Sair content = null;


public Botao(Sair cont){
	super("Detona");
	this.addActionListener(this); // Como implemento ActionListener então essa classe herda
	this.setSize(60, 30);
	this.setVisible(true);
	
	content = cont;
}

//**********Aqui digo pro nosso amiguinho fechar a janela enviada em sua criação como parâmetro
public void actionPerformed(ActionEvent e) {
if(e.getSource() == this){
content.dispose();
}

}

}

// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

    jPanel_SairAplicacao = new javax.swing.JPanel();
    jPretendeSair = new javax.swing.JLabel();
    jButton_Sim = new javax.swing.JButton();
    jButton_Nao = new javax.swing.JButton();

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

    jPanel_SairAplicacao.setBackground(new java.awt.Color(235, 235, 242));
    jPanel_SairAplicacao.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));

    jPretendeSair.setFont(new java.awt.Font("Berlin Sans FB Demi", 0, 14));
    jPretendeSair.setForeground(new java.awt.Color(0, 0, 102));
    jPretendeSair.setText("Pretende mesmo sair da aplicação?");

    jButton_Sim.setFont(new java.awt.Font("Berlin Sans FB Demi", 0, 12)); // NOI18N
    jButton_Sim.setForeground(new java.awt.Color(0, 0, 112));
    jButton_Sim.setText("Sim");
    jButton_Sim.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButton_SimActionPerformed(evt);
        }
    });

    jButton_Nao.setFont(new java.awt.Font("Berlin Sans FB Demi", 0, 12));
    jButton_Nao.setForeground(new java.awt.Color(0, 0, 112));
    jButton_Nao.setText("Não");

    javax.swing.GroupLayout jPanel_SairAplicacaoLayout = new javax.swing.GroupLayout(jPanel_SairAplicacao);
    jPanel_SairAplicacao.setLayout(jPanel_SairAplicacaoLayout);
    jPanel_SairAplicacaoLayout.setHorizontalGroup(
        jPanel_SairAplicacaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(jPanel_SairAplicacaoLayout.createSequentialGroup()
            .addGroup(jPanel_SairAplicacaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel_SairAplicacaoLayout.createSequentialGroup()
                    .addGap(59, 59, 59)
                    .addComponent(jPretendeSair))
                .addGroup(jPanel_SairAplicacaoLayout.createSequentialGroup()
                    .addGap(76, 76, 76)
                    .addComponent(jButton_Sim)
                    .addGap(66, 66, 66)
                    .addComponent(jButton_Nao)))
            .addContainerGap(120, Short.MAX_VALUE))
    );
    jPanel_SairAplicacaoLayout.setVerticalGroup(
        jPanel_SairAplicacaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addGroup(jPanel_SairAplicacaoLayout.createSequentialGroup()
            .addGap(64, 64, 64)
            .addComponent(jPretendeSair)
            .addGap(65, 65, 65)
            .addGroup(jPanel_SairAplicacaoLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                .addComponent(jButton_Nao)
                .addComponent(jButton_Sim))
            .addContainerGap(130, 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(jPanel_SairAplicacao, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
    );
    layout.setVerticalGroup(
        layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
        .addComponent(jPanel_SairAplicacao, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
    );

    pack();
}// </editor-fold>

private void jButton_SimActionPerformed(java.awt.event.ActionEvent evt) {

}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
    java.awt.EventQueue.invokeLater(new Runnable() {
        public void run() {
            new Sair().setVisible(true);
        }
    });
}

// Variables declaration - do not modify
private javax.swing.JButton jButton_Nao;
private javax.swing.JButton jButton_Sim;
private javax.swing.JPanel jPanel_SairAplicacao;
private javax.swing.JLabel jPretendeSair;
// End of variables declaration

}[/code]

humm…
os erros nao apareceram…
aparecem sublinhados a vermelho…
localizam-se nas linhas: 53 e 62;
sera que consegue descobrir o pk…?

[code]public class JanelaEfetuar extends JFrame {
public JanelaEfetuar(JanelaFeito janelaFeito) throws HeadlessException {
super(“Efetuar”);
this.janelaFeito = janelaFeito;
textField=new JTextField();
botao=new JButton(“inserir”);
adicionarAcao();
this.getContentPane().setLayout(new BorderLayout());
this.getContentPane().add(botao,BorderLayout.SOUTH);
this.getContentPane().add(textField,BorderLayout.CENTER);
}

private void adicionarAcao(){
	botao.addActionListener(new AcaoInserirEFechar(this, janelaFeito));
}

private JTextField textField;
private JButton botao;
private JanelaFeito janelaFeito;
public String getText() {
	
	return textField.getText();
}

}
[/code]

[code]public class AcaoInserirEFechar implements ActionListener {

public AcaoInserirEFechar(JanelaEfetuar janelaEfetuar,
		JanelaFeito janelaFeito) {
	super();
	this.janelaEfetuar = janelaEfetuar;
	this.janelaFeito = janelaFeito;
}
private JanelaEfetuar janelaEfetuar;
private JanelaFeito janelaFeito;
@Override
public void actionPerformed(ActionEvent e) {
	janelaFeito.adicionarTexto(janelaEfetuar.getText());
	janelaEfetuar.dispose();
	
	
}

}[/code]

Acho que vc está precisando estudar um pouco mais amigo…

Eu nao aprendi java na escola… o pouco que sei fui vendo sozinha…
a cadeira é desenho de interfaces, e o objectivo era criar um projecto. e po-lo funcional…
o problema é que o professor só nos deu um monte de tutorials, que nao explicou, so disse pa ver mos…
enfim…
Bem… neste momento to confusa, a resposta que me deu agora tem a ver com o que?
me desculpe…
:oops:

Não precisa pedir desculpa, só te dei um toque pra estudar mais o básico antes de ir querendo fazer tudo. Um bom caminho para aprender sobre Swing é dar uma lida no Deitel. Mas enfim, mexi na classe JanelaEfetuar e criei um novo Listener AcaoInserirEFechar para fazer o que vc quer, inserir o texte em um text field e depois fechar a propria janela. Dê uma olhada no exemplo e ve o que vc consegue fazer. Ah, eu aprendi pouco coisa na facu tb, a maior parte aprendi lendo livros e pequisando aqui na net…

podem ver se aquilo que resp ao neoCortex que é o codigo longo que tem dois erros, um na linha 53 e outro na linha 62 está correcto… e como fazer pa ficar 100%bem…
já não consigo ver muito mais disto… ja sao 3h da manha… e amanha tenho aulas cedo…
e é a entrega…
Valeu por tudo

Boas!
ja consegui sair da aplicação…
afinal era so ir ao codigo do botao para sair e introduzir: System.exit(0);
Obrigado na mesma pelas dicas
ate a proxima… :smiley: