Viruz Blog
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Mini Bloc de Notas 1.0

Ir abajo

Mini Bloc de Notas 1.0 Empty Mini Bloc de Notas 1.0

Mensaje  Admin (Viruz) Miér Sep 26, 2012 9:37 pm

Hola Amigos en esta ocasión les traigo una versión muy sofisticada hecha en Java de un Bloc de Notas, con el podremos abrir y guardar archivos .txt. Como siempre les dejo el código para que puedan jugar y probar con él y realizar muchos editores y mejorados.
Aquí una Imagen

[Tienes que estar registrado y conectado para ver este vínculo]

¿Como funciona el Mini Bloc?

  1. Creamos nuestra Barra de Menú en la parte superior (JMenuBar), seguido de nuestros MenuItems dependiendo cuantos quieras en este caso solo son 2 para esta primera versión.
  2. Asignamos los eventos a cada uno de los MenuItems con un oyente de la clase ActionListener y hacemos referencia a los métodos abrirArchivo() y guardarArchivo().
  3. Creamos un objeto de tipo "FileDialog" que es la ventana que nos permitirá abrir o guardar dependiendo el parametro que se le pase .LOAD o .SAVE para abrir y guardar respectivamente.
  4. Creamos un objeto de BufferedReader o BufferedWriter para la lectura o escritura de Strings.
  5. Por último con ayuda de un ciclo while se leerá todo lo que tiene el contenido en el .txt que se abre mediante el método readLine() y con una condición preguntando hasta que sea diferente de null.
Código

Clase Main
01 /**
02 *
03 * @author ViRuZ
04 */
05
06 public class Main {
07 public static void main(String [] args){
08 new BlocNotas();
09 }
10 }



Clase BlocNotas
01 /**
02 *
03 * @author ViRuZ
04 */
05
06 import java.awt.*;
07 import java.awt.event.ActionEvent;
08 import java.awt.event.ActionListener;
09 import java.awt.event.WindowAdapter;
10 import java.awt.event.WindowEvent;
11 import java.io.*;
12
13 public class BlocNotas extends Frame {
14 private MenuItem Abrir;
15 private MenuItem Guardar;
16 private MenuItem Salir;
17 private TextArea texto;
18
19 public BlocNotas(){
20 super("Viruz Blog: Bloc de Notas");
21 setSize(600,600);
22 setBackground(Color.white);
23 setLocationRelativeTo(null);
24 addMenu();
25 addEventos();
26 addComponentes();
27 setVisible(true);
28 }
29
30 public void addMenu (){
31 MenuBar barra = new MenuBar();
32 Menu m1 = new Menu("Archivo");
33 Menu m2 = new Menu("Editar");
34 barra.add(m1);
35 barra.add(m2);
36 Abrir = new MenuItem("Abrir");
37 Guardar = new MenuItem("Guardar");
38 Salir = new MenuItem("Salir");
39 m1.add(Abrir);
40 m1.add(Guardar);
41 m1.add(Salir);
42 setMenuBar(barra);
43 }
44
45 public void addEventos(){
46 addWindowListener (new WindowAdapter(){
47 @Override
48 public void windowClosing(WindowEvent e){
49 confirmarSalida();
50 }
51 });
52 Salir.addActionListener(new ActionListener(){
53 public void actionPerformed(ActionEvent e){
54 confirmarSalida();
55 }
56 });
57 Abrir.addActionListener(new ActionListener(){
58 public void actionPerformed(ActionEvent e){
59 abrirArchivo();
60 }
61 });
62 Guardar.addActionListener(new ActionListener(){
63 public void actionPerformed(ActionEvent e){
64 guardarArchivo();
65 }
66 });
67 }
68
69 public void confirmarSalida(){
70 VentanaDialogo v = new VentanaDialogo(this);
71 v.setVisible(true);
72 }
73
74 public void abrirArchivo(){
75 String nombre;
76 FileDialog d = new FileDialog(this,"Abrir archivo"
77 ,FileDialog.LOAD);
78 d.setLocation(50, 50);
79 d.setFile("* .* ");
80 d.setVisible(true);
81 // getFile obtengo el nombre del archivo seleccionado
82 nombre =d.getDirectory()+ d.getFile();
83 if(nombre!=null){
84 try{
85 BufferedReader archivo = new BufferedReader(
86 new FileReader(nombre));
87 String linea;
88 //setText Asigna caracteres al area de texto
89 texto.setText("");
90 while((linea=archivo.readLine())!=null){
91 //"\n" Salto de linea
92 texto.setText(texto.getText()+linea+"\n");
93 }
94 archivo.close();
95 }catch(IOException e){
96 System.out.println("Error de Archivo");
97 }
98 }
99 }
100
101 public void guardarArchivo(){
102 String nombre;
103 FileDialog d = new FileDialog(this,"Guardar archivo"
104 ,FileDialog.SAVE);
105 d.setLocation(100, 100);
106 d.setVisible(true);
107 //getDirectory te permite guardar en la ubicacion que se desea
108 nombre = d.getDirectory()+ d.getFile();
109 if(nombre!=null){
110 try{
111 BufferedWriter archivo = new BufferedWriter(
112 new FileWriter(nombre));
113 //getText agarra el string
114 archivo.write(texto.getText());
115 //Cierra el flujo
116 archivo.close();
117 }catch(IOException e){
118 System.out.println("Error de archivo");
119 }
120 }
121 }
122
123 public void addComponentes(){
124 texto = new TextArea(300,300);
125 add(texto,"Center");
126 }
127 }

Clase Ventana Dialogo
01 /**
02 *
03 * @author ViRuZ
04 */
05
06 import java.awt.*;
07 import java.awt.event.ActionEvent;
08 import java.awt.event.ActionListener;
09
10 public class VentanaDialogo extends Dialog {
11 private Button boton;
12 private Button boton2;
13
14 public VentanaDialogo(Frame padre){
15 super(padre,"Salir de la ventana",true);
16 setBounds(200,200,200,100);
17 setLocationRelativeTo(null);
18 setBackground(Color.WHITE);
19 addComponentes();
20 addEventos();
21 }
22
23 public void addComponentes(){
24 Panel p = new Panel();
25 boton = new Button("Aceptar");
26 boton2 = new Button("Cancelar");
27 add(new Label("Desea Salir Realmente"),
28 BorderLayout.NORTH);
29 add(p,BorderLayout.SOUTH);
30 p.add(boton);
31 p.add(boton2);
32 }
33
34 public void addEventos(){
35 boton.addActionListener(new ActionListener(){
36 public void actionPerformed(ActionEvent e){
37 System.exit(0);
38 }
39 });
40 boton2.addActionListener(new ActionListener(){
41 public void actionPerformed(ActionEvent e){
42 setVisible(false);
43 }
44 });
45 }
46 }

Descarga el Código
Bloc de Notas 1.0

Autor: Viruz study
Enlace: Mini Bloc de Notas 1.0
Admin (Viruz)
Admin (Viruz)
Admin

Mensajes : 148
Fecha de inscripción : 23/09/2012
Edad : 35
Localización : Desktop

https://viruz.foroactivo.mx

Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.