Procesador de textos

 

package prtxt;

 

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

 

import javax.swing.*;

import javax.swing.text.StyledEditorKit;

 

 

public class Procesador {

 

      public static void main(String[] args) {

           

            MenuProcesador mimenu = new MenuProcesador();

           

            mimenu.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

 

      }

 

}

class MenuProcesador extends JFrame {

     

      public MenuProcesador() {

           

            setBounds(500,300,550,400);

           

            LaminaProcesador milamina = new LaminaProcesador();

           

            add(milamina);

           

            setVisible(true);

      }

     

}

class LaminaProcesador extends JPanel{

     

      public LaminaProcesador() {

           

setLayout(new BorderLayout());

           

            JPanel LaminaMenu  = new JPanel();

           

            JMenuBar mibarra = new JMenuBar();

           

            //Creación de los menús

            fuente = new JMenu("Fuente");

           

            estilo = new JMenu("Estilo");

           

            tamano = new JMenu("Tamaño");

           

            ConfiguraMenu("Arial", "fuente", "Arial", 9,10);

           

            ConfiguraMenu("Courier", "fuente", "Courier", 9,10);

           

            ConfiguraMenu("Verdana", "fuente", "Verdana", 9,10);

 

            ConfiguraMenu("Negrita", "estilo", "", Font.BOLD,1);

           

            ConfiguraMenu("Cursiva", "estilo", "", Font.ITALIC, 1);

 

            ConfiguraMenu("12", "tamano", "", 1,12);

           

            ConfiguraMenu("16", "tamano", "", 1,16);

           

            ConfiguraMenu("20", "tamano", "", 1,20);

           

            ConfiguraMenu("24", "tamano", "", 1,24);

 

           

            mibarra.add(fuente);

           

            mibarra.add(estilo);

           

            mibarra.add(tamano);

           

            LaminaMenu.add(mibarra);

           

            add(LaminaMenu, BorderLayout.NORTH);

           

            miarea = new JTextPane();         

            add(miarea, BorderLayout.CENTER);

 

      }

     

      public void ConfiguraMenu (String rotulo, String menu, String tipo_letra, int estilos, int tam) {

           

      JMenuItem submenus = new JMenuItem(rotulo);

           

            if(menu=="fuente") {

                 

                  fuente.add(submenus);

if(tipo_letra=="Arial") {

                       

                        submenus.addActionListener(new StyledEditorKit.FontFamilyAction("cambia_letra", "Arial"));

                  }else if(tipo_letra=="Courier") {

                       

                        submenus.addActionListener(new StyledEditorKit.FontFamilyAction("cambia_letra", "Courier"));

                  }else if(tipo_letra=="Verdana") {

                       

                        submenus.addActionListener(new StyledEditorKit.FontFamilyAction("cambia_letra", "Verdana"));

                  }

 

            }else if(menu=="estilo") {

                 

                  estilo.add(submenus);

if(estilos==Font.BOLD) {

                       

                        submenus.addActionListener(new StyledEditorKit.BoldAction());

                  }else if (estilos==Font.ITALIC) {

                       

                        submenus.addActionListener(new StyledEditorKit.ItalicAction());

                  }

 

                 

            }else if(menu=="tamano") {

                 

                  tamano.add(submenus);

                 

                  submenus.addActionListener(new StyledEditorKit.FontSizeAction("cambia_tamaño", tam));

            }

           

 

      }

     

     

 

 

      JTextPane miarea; //Objeto del área de texto

     

      JMenu fuente, estilo, tamano; //creamos los menús

     

      Font letras;

 

 

}

 

No hay comentarios:

Publicar un comentario