Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import javax.swing.*;
- import javax.swing.text.StyledEditorKit;
- import java.awt.*;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.awt.event.InputEvent;
- import java.awt.event.KeyEvent;
- public class MainProcesadorTexto2 {
- public static void main(String[] args) {
- FrameProcesadorTexto2 miFrame = new FrameProcesadorTexto2();
- miFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- }
- }
- class FrameProcesadorTexto2 extends JFrame {
- public FrameProcesadorTexto2(){
- setBounds(500,300,550,400);
- SheetProcesadorTexto2 mySheet = new SheetProcesadorTexto2();
- add(mySheet);
- setVisible(true);
- }
- }
- class SheetProcesadorTexto2 extends JPanel{
- public SheetProcesadorTexto2(){
- setLayout(new BorderLayout());
- JPanel laminaMenu = new JPanel();
- //************************************
- //menus
- JMenuBar miMenuBarra = new JMenuBar();
- fuente = new JMenu("Fuente");
- estilo = new JMenu("Estilo");
- tamano = new JMenu("Tamano");
- // menu de tipografia
- configurarMenu("Arial New", "fuente", "Arial New",9,10,"");
- configurarMenu("Courier New", "fuente", "Courier New",9,10,"");
- configurarMenu("Verdana", "fuente", "Verdana",9,10,"");
- // ------------------------menu de estilo--------------------------------------------
- configurarMenu("negrita", "estilo", "",Font.BOLD,1,"src/graficos/childCare.png");
- configurarMenu("cursiva", "estilo", "",Font.ITALIC,1,"src/graficos/childCare.png");
- /*JCheckBoxMenuItem negrita = new JCheckBoxMenuItem("negrita", new ImageIcon("src/graficos/childCare"));
- JCheckBoxMenuItem cursiva = new JCheckBoxMenuItem("cursiva", new ImageIcon("src/graficos/childCare"));
- //responden a eventos
- negrita.addActionListener(new StyledEditorKit.BoldAction());
- cursiva.addActionListener(new StyledEditorKit.ItalicAction());*/
- //------------------------------------------ menu de tamano-----------------------------------------------
- ButtonGroup tamanoLetra = new ButtonGroup();
- JRadioButtonMenuItem doce = new JRadioButtonMenuItem("12");
- JRadioButtonMenuItem dieciseis = new JRadioButtonMenuItem("16");
- JRadioButtonMenuItem veinte = new JRadioButtonMenuItem("20");
- JRadioButtonMenuItem veinticuatro = new JRadioButtonMenuItem("24");
- //veinticuatro.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_D, InputEvent.CTRL_DOWN_MASK));
- //agregamos al grupo
- tamanoLetra.add(doce);
- tamanoLetra.add(dieciseis);
- tamanoLetra.add(veinte);
- tamanoLetra.add(veinticuatro);
- doce.addActionListener(new StyledEditorKit.FontSizeAction("cambia tamano",12));
- dieciseis.addActionListener(new StyledEditorKit.FontSizeAction("cambia tamano",16));
- veinte.addActionListener(new StyledEditorKit.FontSizeAction("cambia tamano",20));
- veinticuatro.addActionListener(new StyledEditorKit.FontSizeAction("cambia tamano",24));
- tamano.add(doce);
- tamano.add(dieciseis);
- tamano.add(veinte);
- tamano.add(veinticuatro);
- //************************agregamos los menu a la barra**************************
- miMenuBarra.add(fuente);
- miMenuBarra.add(estilo);
- miMenuBarra.add(tamano);
- //------------------------------------
- /* estilo.add(negrita);
- estilo.add(cursiva);*/
- //-------------lamina para el menu------------
- laminaMenu.add(miMenuBarra);
- add(laminaMenu, BorderLayout.NORTH);
- //---------------area o panel de texto--------------
- miArea = new JTextPane();
- //JScrollPane miAreaScroll = new JScrollPane(miArea);
- add(miArea, BorderLayout.CENTER);
- // ------ Menu Emergente ------
- JPopupMenu miMenuEmergente = new JPopupMenu();
- JMenuItem negritaE = new JMenuItem("negrita");
- JMenuItem cursivaE = new JMenuItem("cursiva");
- //Agregando Funcionalidad
- negritaE.addActionListener(new StyledEditorKit.BoldAction());
- cursivaE.addActionListener(new StyledEditorKit.ItalicAction());
- miMenuEmergente.add(negritaE);
- miMenuEmergente.add(cursivaE);
- miArea.setComponentPopupMenu(miMenuEmergente);
- }
- public void configurarMenu(String rotulo, String Menu, String tipoLetra, int estilos, int tamFuente,String rutaIcono){
- JMenuItem elemMenu = new JMenuItem(rotulo, new ImageIcon(rutaIcono));
- if(Menu == "fuente") {
- fuente.add(elemMenu);
- if (tipoLetra == "Arial New"){
- elemMenu.addActionListener(new StyledEditorKit.FontFamilyAction("cambiaLetra", "Arial New"));
- }else if(tipoLetra == "Courier New"){
- elemMenu.addActionListener(new StyledEditorKit.FontFamilyAction("cambioLetra", "Courier New"));
- }else if(tipoLetra == "Verdana"){
- elemMenu.addActionListener(new StyledEditorKit.FontFamilyAction("cambiamoLetra", "Verdana"));
- }
- }else if (Menu == "estilo"){
- estilo.add(elemMenu);
- if (estilos == Font.BOLD){
- elemMenu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_DOWN_MASK));
- elemMenu.addActionListener(new StyledEditorKit.BoldAction());
- }else if(estilos == Font.ITALIC){
- elemMenu.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_K,InputEvent.CTRL_DOWN_MASK));
- elemMenu.addActionListener(new StyledEditorKit.ItalicAction());
- }
- } else if (Menu == "tamano") {
- tamano.add(elemMenu);
- elemMenu.addActionListener(new StyledEditorKit.FontSizeAction("cambiaTamaño", tamFuente));
- }
- }
- // ------------variables globales----------
- JTextPane miArea;
- JMenu fuente, estilo, tamano;
- Font letras;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement