En el anterior artículo creamos el marco del procesador de textos y le dimos interacción al botón de los margenes.
Ahora vamos a crear una clase interna dentro del JComboBoxTipo_letra en la que lo penemos a las escucha y le indicamos que cada vez que seleccionemos
un tipo de letra distinto, nos lo modifique en el JTextArea.
Tipo_letra.addActionListener(new ActionListener()
{
public void
actionPerformed(ActionEvent e)
{
String
Tex_ = (String) Tipo_letra.getSelectedItem();
Area_texto.setFont(new Font(Tex_,10,20));
}
});
Lamina_botones.add(Tipo_letra);
add(Lamina_botones);
}
private JButton Establece_corte_Linea;
private JComboBox Tipo_letra;
}
Todo el código queda así:
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class
practica3 {
public static void main(String[] arg) {
MarcO marcO22= new
MarcO();
marcO22.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
marcO22.setVisible(true);
}
}
class MarcO extends JFrame{
public MarcO() {
setBounds(400,100,800,500);
add(new Lamina());
}
}
class Lamina extends JPanel{
private class LAMINA_BARRA
extends JPanel{
public LAMINA_BARRA() {
Lamina_barra= new
JPanel();
Lamina_barra.setLayout(new FlowLayout(FlowLayout.CENTER,1,0));
BARRA = new
JMenuBar();
Inicio= new JMenu("INICIO");
COP_PEG= new JMenu("COP & PEG");
tIPO_LETRA= new JMenu("TIPO LETRA");
TAMAÑO_LETRA = new JMenu("TAMAÑO LETRA");
VISTA = new JMenu("VISTA");
COPIAR= new JMenuItem("COPIAR");
PEGAR= new JMenuItem("PEGAR");
GUARDAR= new JMenuItem("GUARDAR");
GUARDAR_COMO= new JMenuItem("GUARDAR COMO");
NEGRITA = new JMenuItem("NEGRITA");
CURSIVA = new JMenuItem("CURSIVA");
POR2 = new JMenuItem("X 2");
POR10 =
new JMenuItem("X 10");
POR100
= new JMenuItem("X 100");
CINCUENTA= new JMenuItem("50 %");
CIEN= new JMenuItem("100 %");
DOSCIENTOS= new JMenuItem("200 %");
TRESCIENTOS= new JMenuItem("300 %");
BARRA.add(Inicio);
Inicio.add(GUARDAR);
Inicio.add(GUARDAR_COMO);
Inicio.addSeparator();
Inicio.add(COP_PEG);
COP_PEG.add(COPIAR);
COP_PEG.add(PEGAR);
BARRA.add(tIPO_LETRA);
tIPO_LETRA.add(NEGRITA);
tIPO_LETRA.add(CURSIVA);
BARRA.add(TAMAÑO_LETRA);
TAMAÑO_LETRA.add(POR2);
TAMAÑO_LETRA.add(POR10);
TAMAÑO_LETRA.add(POR100);
BARRA.add(VISTA);
VISTA.add(CINCUENTA);
VISTA.add(CIEN);
VISTA.add(DOSCIENTOS);
VISTA.add(TRESCIENTOS);
Lamina_barra.add(BARRA);
add(Lamina_barra);
}
private JMenuBar BARRA;
private JMenu Inicio, tIPO_LETRA,TAMAÑO_LETRA,VISTA,COP_PEG;
private JMenuItem COPIAR,PEGAR,GUARDAR,GUARDAR_COMO,NEGRITA,CURSIVA,POR2,POR10,POR100,CIEN,DOSCIENTOS,TRESCIENTOS,CINCUENTA;
}
private class LAMINA_BOTONES
extends JPanel{
public LAMINA_BOTONES() {
Lamina_botones= new
JPanel();
Lamina_botones.setLayout(new GridLayout(2,1));
Establece_corte_Linea= new
JButton("Set
Line Warp");
Establece_corte_Linea.setBackground(Color.LIGHT_GRAY);
//clase interna anónima
parara el metodo Actionlistener del boton
Establece_corte_Linea.addActionListener(new ActionListener() {
public void
actionPerformed(ActionEvent e) {
boolean saltar =! Area_texto.getLineWrap();
Area_texto.setLineWrap(saltar);
if (saltar) {
Establece_corte_Linea.setText("Quitar
SAlto Linea");
}else {
Establece_corte_Linea.setText("Poner
Salto Linea");
}
}
});
//Creamos un array al
que le cargamos las fuentes de nuestro
pc
String
Fuentes_de_mi_pc []=GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames();
//pasamos el array por
parametros al combo para cargar los datos
Tipo_letra= new JComboBox(Fuentes_de_mi_pc);
Tipo_letra.setSize(new Dimension(10,10));
Lamina_botones.add(Establece_corte_Linea);
// creamos una clase
interna anónima a la que le indicamos
que modifique el tipo texto cuando lo
cambiemos en JComboBox
Tipo_letra.addActionListener(new ActionListener() {
public void
actionPerformed(ActionEvent e) {
String
Tex_ = (String) Tipo_letra.getSelectedItem();
Area_texto.setFont(new Font(Tex_,10,20));
}
});
Lamina_botones.add(Tipo_letra);
add(Lamina_botones);
}
private JButton Establece_corte_Linea;
private JComboBox Tipo_letra;
}
private class LAMINA_TEXTO
extends JPanel{
public LAMINA_TEXTO() {
Lamina_Texto = new
JPanel();
Area_texto= new
JTextArea("",25,45);
Area_texto.setLineWrap(true);
Scroll_texto= new
JScrollPane(Area_texto);
Lamina_Texto.add(Scroll_texto);
add(Lamina_Texto);
}
}
public Lamina() {
setLayout(new BorderLayout());
LAMINA_TEXTO
L_text = new
LAMINA_TEXTO();
LAMINA_BOTONES
L_BPT = new
LAMINA_BOTONES();
LAMINA_BARRA
L_BAR = new
LAMINA_BARRA();
setLayout(new BorderLayout());
L_text.setVisible(true);
add(L_text, BorderLayout.CENTER);
add(L_BPT,BorderLayout.WEST);
add(L_BAR,BorderLayout.NORTH);
}
private JScrollPane Scroll_texto;
private JTextArea Area_texto;
private JPanel Lamina_barra,Lamina_Texto,Lamina_botones;
}
Si te gusta puede continuar
No hay comentarios:
Publicar un comentario