Fazendo um Mini Bloco de Notas

0 respostas
N
Eu estava com essa ideia na cabeça,que é até simples e utiliza métodos Swing,JTextField,JMenu(todos os componentes) e em uma classe separada RadioButtons e ButtonGroup e um FileWriter

Queria fazer isso para deixar as classes mais bem estruturadas e ter a certeza do entendimento total dos itens.

A ideia é simples,você escreve alguma coisa no JTextField e clica no JMenuItem,nisso fecha-se a janela atual e abre-se a outra janela da outra classe

Classe 1:

import java.awt.Color;

import java.awt.Container;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;
import javax.swing.*;

public class Testes1 extends JFrame implements ActionListener{

JTextArea text ;

String tring;
Testes1(){

setSize(800,500);

Container c = getContentPane();

c.setBackground(Color.GREEN);
text = new JTextArea();
add(text);
JScrollPane barra = new JScrollPane(text);
add(barra);
JMenuBar bar = new JMenuBar();
setJMenuBar(bar);
JMenu Salvar = new JMenu("Salvar");
bar.add(Salvar);
JMenuItem SalvarAs = new JMenuItem("Salvar como:");
Salvar.add(SalvarAs);
setVisible(true);
setTitle("Barra de Rolagem");
setDefaultCloseOperation(EXIT_ON_CLOSE);
setResizable(false);
setLocationRelativeTo(null);
setLayout(null);

SalvarAs.addActionListener(new ActionListener() {
	public void actionPerformed(ActionEvent e) {
		tring = JOptionPane.showInputDialog(null,"Nome do Arquivo:");
		dispose();
		
		Radio radio = new Radio();
	}
	
});

}

public static void main(String[] args) {
	new Testes1();
}

}

Blockquote
Classe 2:

public class Radio extends JFrame implements ActionListener {

Radio(){

setSize(500,500);
setVisible(true);
setTitle("SalvarComo");
setDefaultCloseOperation(EXIT_ON_CLOSE);
setResizable(false);
JRadioButton radio = new JRadioButton("Desktop");
JRadioButton radio2 = new JRadioButton("C:\\");
radio.setBounds(100,100,100,100);
radio2.setBounds(100,180,100,100);
add(radio2);

add(radio);

ButtonGroup separador = new ButtonGroup();

separador.add(radio);

separador.add(radio2);

setLocationRelativeTo(null);

setLayout(null);

radio.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
	Testes1 teste = new Testes1();
		System.out.println(teste.text.getText());
		
		try {
		FileWriter file = new FileWriter("C:\\Users\\Tarik\\Desktop\\Text.txt");

   file.write(teste.text.getText());
    file.close();
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}
	
	
});

}

public static void main(String[] args) {
	new Radio();
}

}

O problema é que para cada uma das classes preciso instanciar uma nova classe da outra,ou seja,
Classe 1,depois salvar instancia a classe 2
Classe 2,precisa dos itens da classe 1,instancia a classe 1
E assim o método de escrever do FileWriter não está dando certo,já testei de outras maneiras e todas deram exito,precisarei juntar as duas classes?

Criado 29 de abril de 2018
Respostas 0
Participantes 1