Comunidad de diseño web y desarrollo en internet

Calculadora en JAVA

Citar            
MensajeEscrito el 22 Mar 2008 10:17 am
Hola a tod@s! Ahora mismo estoy haciendo una calculadora en Java, idéntica a la de Windows. Lo que me gustaría es, puesto que ya he hecho un menú ("Edición", "Ver", "Ayuda"), asignar a los 2 items del menú "Edición" los comandos "copiar" y "pegar" de Windows (que puedan copiar los datos de la calculadora en Windows y que puedan pegar datos de Windows en la calculadora). Muchas gracias!
Pd.: También me gustaría saber si se puede trabajar con pequeñas animaciones en los botones (bueno, supongo que se podrá, pero...¿es muy complicado?). Saludos!

Por wencesab

6 de clabLevel



Genero:Masculino  

Murcia

firefox
Citar            
MensajeEscrito el 28 Ago 2009 05:27 pm
Este es un codigo q estoy utilizando para hacer un Bloc de notas en JAVA tambien hago el uso de menus ahi te puedes dar una idea de como implementarlos a tu proyecto , lo siento si es algo largo pero igual ando aprendiendo java

Código :


/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package helloworld;
/**
 *
 * @author Vgalicia
 */
import java.awt.*;
import java.awt.event.*;
import java.awt.Component.*;
import javax.swing.*;
import java.io.*;
import javax.swing.JPanel;
import javax.swing.JScrollPane;


public class BlocNotas extends JFrame {

    /*Creo los menus principales*/

    BorderLayout borderLayout1 = new BorderLayout();
    JPanel panel = new JPanel();
    JMenuBar barraDeMenu = new JMenuBar();
    JMenu archivo = new JMenu();
    JMenu editar = new JMenu();
    JMenu ver = new JMenu();
    JMenu buscar = new JMenu();
    JMenu ayuda = new JMenu();
    JTextArea areaDeTexto = new JTextArea();
    JScrollPane scrollPane = new JScrollPane();
    JFileChooser jfc = new JFileChooser();


     /*Creo los Sub - Menus de todos los Menus Principales*/
    JMenuItem archivo_Nuevo = new JMenuItem();
    JMenuItem archivo_Abrir = new JMenuItem();
    JMenuItem archivo_Guardar = new JMenuItem();
    JMenuItem archivo_GuardarComo = new JMenuItem();
    JMenuItem archivo_Cerrar = new JMenuItem();
    JMenuItem archivo_Salir = new JMenuItem();

    JMenuItem editar_Deshacer = new JMenuItem();
    JMenuItem editar_Rehacer = new JMenuItem();
    JMenuItem editar_Cortar = new JMenuItem();
    JMenuItem editar_Copiar = new JMenuItem();
    JMenuItem editar_Pegar = new JMenuItem();
    JMenuItem editar_Borrar = new JMenuItem();
    JMenuItem editar_Preferencias = new JMenuItem();

    JCheckBoxMenuItem ver_barraHerramientas = new JCheckBoxMenuItem();
    JCheckBoxMenuItem ver_barraEstado = new JCheckBoxMenuItem();

    JMenuItem buscar_Buscar = new JMenuItem();
    JMenuItem buscar_Siguiente = new JMenuItem();
    JMenuItem buscar_Anterior = new JMenuItem();
    JMenuItem buscar_Ir_A_Linea = new JMenuItem();


    JMenuItem ayuda_Contenido = new JMenuItem();
    JMenuItem ayuda_AcercaDe = new JMenuItem ();
    private LayoutManager borderLayout;

    public BlocNotas(){
    panel.setLayout (borderLayout);
    super.setTitle("Bloc de Notas");

    /*Establecemos el contenido de cada Menu*/

    archivo.setText ("Archivo");
    archivo.setMnemonic('A');
    archivo_Nuevo.setText("Nuevo");
    archivo_Abrir.setText("Abrir");
    archivo_Guardar.setText("Guardar");
    archivo_GuardarComo.setText("Guardad como ...");
    archivo_Cerrar.setText("Cerrar");
    archivo_Salir.setText("Salir");

    editar.setText("Editar");
    editar.setMnemonic('E');
    editar_Deshacer.setText("Deshacer");
    editar_Rehacer.setText("Rehacer");
    editar_Cortar.setText("Cortar");
    editar_Copiar.setText("Copiar");
    editar_Pegar.setText("Pegar");
    editar_Borrar.setText("Borrar");
    editar_Preferencias.setText("Preferencias");

    ver.setText("Ver");
    ver.setMnemonic('V');
    ver_barraHerramientas.setText("Barra de Herramientas");
    ver_barraEstado.setText("Barra de Estado");

    buscar.setText("Buscar");
    buscar.setMnemonic('B');
    buscar_Buscar.setText("Buscar");
    buscar_Siguiente.setText("Buscar Siguiente");
    buscar_Anterior.setText("Buscar Anterior");
    buscar_Ir_A_Linea.setText("Ir a Linea");

    ayuda.setText("Ayuda");
    ayuda.setMnemonic('U');
    ayuda_Contenido.setText("Contenido");
    ayuda_AcercaDe.setText("Acerca de");


    /* Deshabilito las opciones de Buscar como estado incial
    * ya que en ningun momento se inicio una busqueda
    */
    buscar_Siguiente.setEnabled(true);
    buscar_Anterior.setEnabled(true);


    /* Deshabilito las opciones de Editar como estado inicial
    * ya que en ningun momento se edito el archivo
    */

    editar_Deshacer.setEnabled(true);
    editar_Rehacer.setEnabled(true);
    editar_Cortar.setEnabled(true);
    editar_Copiar.setEnabled(true);
    editar_Pegar.setEnabled(true);
    editar_Borrar.setEnabled(true);


     /* Habilito las opciones de Ver ya que al inicio de todo
     * editor se muestra la barra de Estado y de Herramientas
     */

    ver_barraHerramientas.setSelected(true);
    ver_barraEstado.setSelected(true);


      /* Agrego todas las opciones a la barra de Menu */
    barraDeMenu.add(archivo);
    barraDeMenu.add(editar);
    barraDeMenu.add(ver);
    barraDeMenu.add(buscar);
    barraDeMenu.add(ayuda);


      /* Agrego a los submenus para cada menu correspondiente */

    archivo.add(archivo_Nuevo);
    archivo.add(archivo_Abrir);
    archivo.add(archivo_Guardar);
    archivo.add(archivo_GuardarComo);
    archivo.add(archivo_Cerrar);
    archivo.add(archivo_Salir);

    editar.add(editar_Deshacer);
    editar.add(editar_Rehacer);
    editar.add(editar_Cortar);
    editar.add(editar_Copiar);
    editar.add(editar_Pegar);
    editar.add(editar_Borrar);
    editar.add(editar_Preferencias);

    ver.add(ver_barraHerramientas);
    ver.add(ver_barraEstado);

    buscar.add(buscar_Buscar);
    buscar.add(buscar_Siguiente);
    buscar.add(buscar_Anterior);
    buscar.add(buscar_Ir_A_Linea);

    ayuda.add(ayuda_Contenido);
    ayuda.add(ayuda_AcercaDe);

    /*Agregamos los Menus al Frame*/

    this.setJMenuBar(barraDeMenu);
    this.getContentPane().add(panel, BorderLayout.CENTER);
    this.getContentPane().setPreferredSize(new Dimension(500, 400));
    this.getContentPane().add(scrollPane, BorderLayout.CENTER);
    scrollPane.getViewport().add(areaDeTexto, null);


       /* Eventos de Todos los Elementos del Menu */
     // archivo_Nuevo = Creo un Nuevo Archivo
    archivo_Nuevo.addActionListener(new ActionListener(){
        public void actionPerformed (ActionEvent e ){
            areaDeTexto.setText("");}
    });


    // archivo_Abrir =  Abro un Archivo con FileChooser + Stream

     archivo_Abrir.addActionListener(new ActionListener() {
             public void actionPerformed(ActionEvent e) {
                 if(e.getSource() == archivo_Abrir) {
                     int abroArchivo = jfc.showOpenDialog(BlocNotas.this);

                     if(abroArchivo == jfc.APPROVE_OPTION) {
                         File archivo = jfc.getSelectedFile();
                         FileInputStream miArchivo;
                         int sizeArchivo = Long.valueOf(archivo.length()).intValue();
                             byte archivoALeer[]= new byte[sizeArchivo];
                         try {
                             miArchivo = new FileInputStream(archivo.getPath());
                             miArchivo.read(archivoALeer);
                             areaDeTexto.append(new String(archivoALeer));
                             miArchivo.close();
                         }
                         catch(IOException ex)
                         {
                             System.out.println("Error : "+ex.getMessage());
                         }
                     }
                     areaDeTexto.setCaretPosition(areaDeTexto.getDocument().getLength());
                 }
             }
         });

    // archivo_Guardar =  Guardo mediante el Documento abierto  FileChooser + Stream

    archivo_Guardar.addActionListener(new ActionListener(){
        public void actionPerformed(ActionEvent e ){
        File archivo = jfc.getSelectedFile();
        FileOutputStream miArchivo;
        String contenidoTexto = new String();
            try{
            miArchivo = new FileOutputStream (archivo.getPath());
            contenidoTexto = areaDeTexto.getText();
            miArchivo.write(contenidoTexto.getBytes());
            miArchivo.close();
            }
                catch (IOException ex){
                    System.out.println("Error : " + ex.getMessage());
            }
        }

    });

    // archivo_GuardarComo = Guardo mediante el Documento Abierto por el FileChooser + Stream

    archivo_GuardarComo.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
             if(e.getSource() == archivo_GuardarComo) {
                 int guardoArchivo = jfc.showSaveDialog(BlocNotas.this);

                 if(guardoArchivo == jfc.APPROVE_OPTION) {
                     File archivo = jfc.getSelectedFile();
                     FileOutputStream miArchivo;
                     String contenidoTexto = new String();
                     try {
                         miArchivo = new FileOutputStream(archivo.getPath());
                         contenidoTexto = new String(areaDeTexto.getText());
                         miArchivo.write(contenidoTexto.getBytes());
                         miArchivo.close();
                     }
                     catch(IOException ex) {
                         System.out.println("Error : "+ex.getMessage());
                     }
                 }
             }
         }
     });


    // archivo_Cerrar = Cierro el JTextArea
    archivo_Cerrar.addActionListener(new ActionListener(){
        public void actionPerformed (ActionEvent e ){
            panel.removeAll();
            borderLayout1.removeLayoutComponent(areaDeTexto);
        }
    });

    // archivo_Salir = Salir del editor
    archivo_Salir.addActionListener(new ActionListener(){
        public void actionPerformed(ActionEvent e ){
                System.exit(0);
            }
    });

    //editar_Cortar = corta el texto seleccionado y lo guardamos en un ClipBoard

    editar_Cortar.addActionListener(new ActionListener(){
        public void actionPerformed (ActionEvent e){
                if (e.getSource() == editar_Cortar){
                    areaDeTexto.cut();
                }
            }
    });

    editar_Copiar.addActionListener(new ActionListener(){
        public void actionPerformed(ActionEvent e){
            if (e.getSource() == editar_Copiar){
                areaDeTexto.copy();
            }
        }
    });

    editar_Pegar.addActionListener(new ActionListener(){
        public void actionPerformed (ActionEvent e){
            if (e.getSource() == editar_Pegar){
                areaDeTexto.paste();
            }
        }
    });

    editar_Borrar.addActionListener(new ActionListener(){
        public void actionPerformed (ActionEvent e){
            if (e.getSource() == editar_Borrar){
                areaDeTexto.
            }
        }
    });
/*
    // buscar_Buscar = Busco el String q ingreso

 // buscar_Buscar = Busco String que ingreso
     buscar_Buscar.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
                areaDeTexto.s
         }
     });
*/    

      // ayuda_AcercaDe mi <??>
     ayuda_AcercaDe.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {
             String texto = "Este es mi primer programa que decidi hacer porque supuse conveniente \n para poner en practica todos 'mis conocimientos' adquiridos luego de leer el book User - Java"; // lo que quiero que aparezca en la ventana creada
             JOptionPane.showMessageDialog(new JFrame(), texto, "Acerca de Rami Editor", JOptionPane.INFORMATION_MESSAGE); // titulo para las ventanas
         }
     });
         /* Empaqueto y muestro el Panel con su contenido */
            super.pack();
            super.setVisible(true);
     

    };// final de public BlocNotas


    public static void main(String[] args) {
        // TODO code application logic here
        new BlocNotas();
        
    }//Final de main
}// Final de clase MenuBar

Por thebluether

27 de clabLevel



Genero:Masculino  

opera

   Página 1 de 1

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.