sábado, 14 de julio de 2012

JTabbedPane


 El API TabbedPane

Las siguientes tablas listan los métodos y constructores más utilizados de JTabbedPane. El API para utilizar TabbedPane se divide en estas categorías.

 Crear y Configurar un TabbedPane

MétodoPropósito
JTabbedPane()
JTabbedPane(int)
Crea un TabbedPane. El argumento opcional indica dónde deberían aparecer las pestañas. Por defecto, las pestañas aparecen en la parte superior. Se pueden especificar estas posiciones (definidas en el interfaceSwingConstants, que implementa JTabbedPane): TOPBOTTOM,LEFTLEFT.
addTab(String, Icon, Component, String)
addTab(String, Icon, Component)
addTab(String, Component)
Añade una nueva pestaña al TabbedPane. El primer argumento especifica el texto de la pestaña. El argumento Icon es opcional e indica el icono de la pestaña. El argumento Component especifica el componente que el TabbedPane debería mostrar cuando se selecciona la pestaña. El cuarto argumento, si existe, especifica el texto del tooltip para la pestaña.

 Insertar, Eliminar, Encontrar y Seleccionar Pestañas

MétodoPropósito
insertTab(String, Icon, Component, String, int)Inserta una pestaña en el índice especificado, donde la primera pestaña tiene índice 0. Los argumentos son los mismos que para addTab.
remove(Component)
removeTabAt(int)
Elimina la pestaña correspondinete al índice o componente especificado.
removeAll()Elimina todas las pestañas.
int indexOfComponent(Component)
int indexOfTab(String)
int indexOfTab(Icon)
Devuelve el índice de la pestaña que tiene el componente, título o icono especificados.
void setSelectedIndex(int)
void setSelectedComponent(Component)
Selecciona la pestaña que tiene el índice o componente especificado. Seleccionar una pestaña tiene el efecto de mostrar su componente asociado.
int getSelectedIndex()
Component getSelectedComponent()
Devuelve el índice o componente de la pestaña seleccionada.

. Cambiar la Apariencia de las Pestañas

MétodoPropósito
void setComponentAt(int, Component)
Component getComponentAt(int)
Selecciona u obtiene qué componente está asociado con la pestáña del índice especificado. La primera pestaña tiene índice 0.
void setTitleAt(int, String)
String getTitleAt(int)
Selecciona u obtiene el título de la pestaña del índice especificado.
void setIconAt(int, Icon)
Icon getIconAt(int)
void setDisabledIconAt(int, Icon)
Icon getDisabledIconAt(int)
Selecciona u obtiene los iconos mostrados por la pestaña del índice especificado.
void setBackgroundAt(int, Color)
Color getBackgroundAt(int)
void setForegroundAt(int, Color)
Color getForegroundAt(int)
Selecciona u obtiene el color de fondo o de primer plano usado por la pestaña del índice especificado. Por defecto, una pestaña utiliza los colores del TabbedPane. Por ejemplo, si el color de primer plano del TabbedPane es negro, entonces todos los títulos de las pestañas serán en negro, excepto para aquellas en que especifiquemos otro color usando setForegroundAt.
void setEnabledAt(int, boolean)
boolean isEnabledAt(int)
Selecciona u obtiene el estado activado de la pestaña del índice especificado.

domingo, 15 de abril de 2012

Manual lfs

http://hdlsec.com/foro/gnulinux/linux-from-scratch-6-3-todo-lo-nesesario-y-en-espanol!!/
Linux From Scratch o LFS es una colección de documentos que nos indican los pasos para compilar una distribución Linux desde cero. El proyecto se diferencia de otras distribuciones en que no consta de paquetes y scripts preensamblados para una instalación automática del sistema, sino que sus usuarios son provistos simplemente con paquetes de código fuente y un manual de instrucciones para el armado de un sistema GNU/Linux propio.

Debido al inmenso trabajo que demanda la instalación de este sistema en comparación a otras distribuciones, los usuarios que deciden hacer uso de LFS son principalmente aficionados que desean aprender sobre el funcionamiento interno de un sistema GNU/Linux y ensamblar un sistema a su medida. Linux From Scratch es también utilizado como base de varias distribuciones, usualmente alejadas de su espíritu original de "metadistribución".


http://es.tldp.org/Manuales-LuCAS/GLUP/glup_0.6-1.1-html-1.1/
G.L.U.P. - Guía de Linux Para el Usuario



jueves, 1 de marzo de 2012

Ventana dialog suma


package practicaAWT;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class VentanaDialogSuma  extends Frame implements ActionListener{
/*
* realizar una aplicacion para sumar numeros, Los numeros se pedirán en una ventana de dialogo y
* la suma de los innttroducidos se mostrara en la ventana principal.
*
*/

Label textoIntroducido;
int suma=0;
private DialogoSencillo dialog;

//constructor
public VentanaDialogSuma(){
Label mensaje=new Label("Suma Total");
add("North",mensaje);
textoIntroducido=new Label("");
add("Center",textoIntroducido);

Button boton=new Button("Ir a ventana Dialog");
boton.addActionListener(this);
Panel panel=new Panel();
panel.add(boton);
add("South",panel);

addWindowListener(new WindowAdapter(){
public void windoClosing(WindowEvent e){
System.exit(0);
}
});

}
public void actionPerformed(ActionEvent e){
if (dialog==null){
dialog=new DialogoSencillo(this, "Ventana de Dialogo",false);
}
dialog.setVisible(true);
}

public void mostrarSuma(String textoleido){
String texto;
try{
int n=Integer.parseInt(textoleido);
suma+=n;
texto=String.valueOf(suma);
}catch(Exception e){
texto="Introduzca Nª enteros ";
}
textoIntroducido.setText(texto);
add("Center",textoIntroducido);
doLayout();
}

public static void main(String[] args) {
VentanaDialogSuma ventan=new VentanaDialogSuma();
ventan.setTitle("Suma de enteros");
ventan.pack();
ventan.setVisible(true);
ventan.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
}
}

class DialogoSencillo extends Dialog implements ActionListener{
TextField texto;
VentanaDialogSuma padre;
Button setBoton;

DialogoSencillo(Frame f, String titulo, boolean modal){
super(f,titulo,modal);
padre=(VentanaDialogSuma)f;

Panel p1=new Panel();
p1.add(new Label("Introduzca el valor: "));
texto=new TextField(30);
texto.addActionListener(this);
p1.add(texto);
add("Center",p1);

Panel p2=new Panel();
p2.setLayout(new FlowLayout(FlowLayout.RIGHT));
Button b=new Button("Cancel");
b.addActionListener(this);
setBoton=new Button("OK");
setBoton.addActionListener(this);
p2.add(b);
add("South",p2);
pack();

}
public void actionPerformed(ActionEvent e){
Object fuente=e.getSource();
if((fuente==setBoton)||(fuente==texto))
{
padre.mostrarSuma(texto.getText());
}
setVisible(true);
}
}

MEnu Popup y text Area---


REalizar una aplciacion con una ventana que muestre, cada vez que se pulsa sobre el boton izquierdo del raton, la posicion en la que se ha pulsado. Ademas, cuando se pulse el boton derecho sobre la ventana debera aparecer un menu con dos opciones y si selecciona alguna de ellas, se debera escribir un mensaje indicandolo.


package practicaAWT;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class MenuPopuTest extends Frame implements ActionListener{

TextArea mensajes;
PopupMenu popup;

public MenuPopuTest(){
MenuItem pp1,pp2;

setLayout(new BorderLayout());
mensajes=new TextArea(5,30);
mensajes.setEditable(false);
add("Center", mensajes);

addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e){
System.exit(0);
}
});

popup=new PopupMenu("Menu Popup");
add(popup);
pp1=new MenuItem("Elemento i");
popup.add(pp1);

pp2=new MenuItem("Elemento ii",new MenuShortcut(KeyEvent.VK_2)); //control+2
popup.add(pp2);

popup.addActionListener(this);

pp1.setActionCommand("elemento 1");
pp2.setActionCommand("elemento 2");

//hay que escuchar al raton par asaber cuando mostrar el menu
EscuchadorDelRaton listene=new EscuchadorDelRaton();
addMouseListener(listene);
mensajes.addMouseListener(listene);
}//fin del constructor

class EscuchadorDelRaton extends MouseAdapter{
public void mousePressed(MouseEvent e){
MostrarPopup(e);
}

public void mouseReleased(MouseEvent e){
MostrarPopup(e);
}
public void mouseClicked(MouseEvent e){
mensajes.append("pos X: "+e.getX()+" pos Y: "+e.getY()+System.getProperty("line.separator"));
}
private void MostrarPopup(MouseEvent e){
if(e.isPopupTrigger()){
popup.show(e.getComponent(),e.getX(),e.getY());
}
}

}

public void actionPerformed(ActionEvent e){
System.out.println("evento: "+e.getActionCommand());

mensajes.append("\""+e.getActionCommand()+"\" pulsada opcion \""+((MenuItem)(e.getSource())).getLabel()+"\""+System.getProperty("line.separator"));
}

public static void main(String[] args) {

MenuPopuTest ventana=new MenuPopuTest();
ventana.setSize(300,300);
ventana.setTitle("Menus");
ventana.setVisible(true);
ventana.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e){
System.exit(0);
}
});

}
}

Agregar y borrar elementos a un choice


package practicaAWT;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

/*
 * realizar una aplciacion con un componente de tipo choice y dos
 * botones que permiritan añadr o eliminar las opciones
 * seleccinadas en el menu choice.
 * si no quedara ninguna se deshabilitará el boton de borrar y si hay mas de 10, se deshabilitara el de añadir.
 */
class ChoiceMenu extends Frame implements ActionListener{

Choice choice=new Choice();
Button borrar=new Button("Borrar");
Button añadir=new Button("Añadir");
int cont=0;

//constructor
ChoiceMenu(){
//ponemos 5 para empezar
for(int i=0; i<5; i++)
{
choice.addItem("Original "+(cont++));
}


borrar.addActionListener(this);
añadir.addActionListener(this);

Panel p=new Panel(new GridLayout(1,0));
p.add(borrar);
p.add(añadir);

add(choice, BorderLayout.CENTER);
add(p, BorderLayout.NORTH);
setSize(200,150);
show();
}



public static void main(String[] args) {
new ChoiceMenu();
}


public void actionPerformed(ActionEvent e) {
String cmd=e.getActionCommand();
int numSeleccionado=choice.getSelectedIndex();
if(cmd.equals("Borrar")){
if(numSeleccionado>=0){
choice.remove(numSeleccionado);
}
}

if(cmd.equals("Añadir")){
//añadimos despues del seleccionado
if(numSeleccionado>=0){
choice.insert("Nuevo" +(cont++),numSeleccionado+1);
choice.select(0);//dejamos visible el primero
}
else{
choice.add("Nuevo"+(cont++));
}
}
borrar.setEnabled(choice.getItemCount()>0);
añadir.setEnabled(choice.getItemCount()<10);


}

}

Menu de opciones.


package practicaAWT;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

class MenuTEst extends Frame implements ActionListener{
TextArea mensajes;
public MenuTEst()
{
setLayout(new BorderLayout());
mensajes=new TextArea(5,30);
mensajes.setEditable(false);
add("Center", mensajes);

MenuBar mb=new MenuBar();//barra de menu

Menu menu1=new Menu("Menu 1");
MenuItem menuItem11=new MenuItem("Opcion 1.");
menu1.add(menuItem11);
menuItem11.setShortcut(new MenuShortcut(KeyEvent.VK_1)); //ctrl - 1

MenuItem menuItem12=new MenuItem("Opcion 2.");
menu1.add(menuItem12);
mb.add(menu1);

//inicio segundo menu
Menu menu2=new Menu("Menu 2");
Menu menu21=new Menu("Submenu 2.1");
menu2.add(menu21);
MenuItem menuItem211=new MenuItem("Opcion 1.");
menu21.add(menuItem211);

MenuItem menuItem22=new MenuItem("Opcion 2.");
menu2.add(menuItem22);
mb.add(menu2);

menu1.addActionListener(this);
menu2.addActionListener(this);
menuItem11.addActionListener(this);
menuItem12.addActionListener(this);
menuItem211.addActionListener(this);
menuItem22.addActionListener(this);

setMenuBar(mb);
}// fin constructor

public void actionPerformed(ActionEvent e){
System.out.println("evento: "+e.getActionCommand());

mensajes.append(e.getActionCommand()+"pulsada opcion de "+((MenuItem)(e.getSource())).getLabel()+" "+System.getProperty("line.separator"));

}
public static void main(String[] args) {
MenuTEst ventana=new MenuTEst();
ventana.setSize(300,300);
ventana.setTitle("Menus");
ventana.setVisible(true);
ventana.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
}
}

Mouse draggin y aaction performed...


package VentanasYEventos;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;

public class Ventana implements MouseListener,MouseMotionListener,ActionListener{
private Frame f;
private TextField tf;
private Label label;
private Button boton;

public Ventana()
{
f=new Frame("Ventana Test");
tf=new TextField(30);
}

public void launchFrame()
{
f.setSize(300,200);
f.setBackground(Color.CYAN);
label=new Label("Ventana Test");

f.add(label,BorderLayout.NORTH);
f.add(tf, BorderLayout.SOUTH);
boton=new Button("ok");
f.add(boton,BorderLayout.EAST);
boton.addActionListener(this);
f.addMouseListener(this);
f.addMouseMotionListener(this);
f.addWindowListener(new Manejador());
f.setVisible(true);

}
public static void main(String[] args) {
Ventana v=new Ventana();
v.launchFrame();
}

@Override
public void mouseClicked(MouseEvent arg0) {
// TODO Auto-generated method stub

}

@Override
public void mouseEntered(MouseEvent arg0) {
// TODO Auto-generated method stub

}

@Override
public void mouseExited(MouseEvent arg0) {
// TODO Auto-generated method stub

}

@Override
public void mousePressed(MouseEvent arg0) {
// TODO Auto-generated method stub

}

@Override
public void mouseReleased(MouseEvent arg0) {
// TODO Auto-generated method stub

}

@Override
public void mouseDragged(MouseEvent e) {
String s="Movimiento del raton : X "+e.getX()+" Y "+e.getY();
label.setText(s);


}

@Override
public void mouseMoved(MouseEvent e) {


}

@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==boton)
{
label.setText(tf.getText());
}

}


}

evento ubicacion del mouse en la pantalla, y mostrandolo en un lavel, mouse dragging


package VentanasYEventos;

import java.awt.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;

public class TestInner {
private Frame f;
private TextField tf;

public TestInner()
{
f=new Frame("Ejemplo de clases internas");
tf=new TextField(30);
}
class MyMouseMotionListener extends MouseMotionAdapter
{
public void mouseDragged(MouseEvent e)
{
String s="Mouse Dragging : X= "+e.getX()+"Y = "+e.getY();
tf.setText(s);
}
}
public void launchFrame()
{
Label label=new Label("Click y drag del mouse");
f.add(label, BorderLayout.NORTH);
f.add(tf, BorderLayout.SOUTH);

f.addMouseMotionListener(new MyMouseMotionListener());
f.addMouseListener(new MouseClickHandler());
f.addWindowListener(new Manejador());
f.setSize(300,200);
f.setVisible(true);
}

public static void main(String[] args) {
TestInner t=new TestInner();
t.launchFrame();
}
}

Card LAyout con etiquetas(label)


package VentanasYEventos;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

public class TestCardLayout extends JFrame{


public static void main(String[] args) {
TestCardLayout frame=new TestCardLayout();
Container container=frame.getContentPane();
JButton siguiente=new JButton("Siguiente");
container.add(siguiente, BorderLayout.NORTH);

JLabel label1=new JLabel("Componente 1");
JLabel label2=new JLabel("Componente 2");
JLabel label3=new JLabel("Componente 3");
JLabel label4=new JLabel("Componente 4");

final JPanel panelComponentes=new JPanel();
final CardLayout layout=new CardLayout();

panelComponentes.setLayout(layout);
panelComponentes.add(label1,"1");
panelComponentes.add(label2,"2");
panelComponentes.add(label3,"3");
panelComponentes.add(label4,"4");
container.add(panelComponentes, BorderLayout.CENTER);

siguiente.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
layout.next(panelComponentes);
}
});
frame.setSize(400,300);
frame.setTitle("Prueba de BorderLayout");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}

JColorChose, elegir color para el fondo de pantalla


package VentanasYEventos;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;
public class MostrarColor3 extends JFrame {
private Color color;
private JButton botonCambiarColor;
private Container contenedor;

//contructor
public MostrarColor3()
{
super("Mostrar VCambiar Color");

//al contenedor le asignamos un layout
contenedor=getContentPane();
contenedor.setLayout(new FlowLayout());

botonCambiarColor=new JButton("Cambiar Color");
botonCambiarColor.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evento)
{
color=JColorChooser.showDialog(MostrarColor3.this,"seleccione un color", color);

//indicar color predeterminado si no se selecciona nungun color
if(color==null)
color=color.LIGHT_GRAY;
//cambiar el color al color seleccionado
contenedor.setBackground(color);

}
}
);
add(botonCambiarColor);
setSize(400,300);
setVisible(true);

}
public static void main(String[] arg)
{
JFrame.setDefaultLookAndFeelDecorated(true);
JDialog.setDefaultLookAndFeelDecorated(true);
MostrarColor3 color=new MostrarColor3();
color.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}
}

JMenuBar--


package interfazSwing;

import javax.swing.JCheckBoxMenuItem;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JRadioButtonMenuItem;

public class JMEnuBArTEst {

/**
* @param args
*/
public static void main(String[] args) {
JFrame f=new JFrame("MEnuBAr tEst");
f.setSize(200,150);
JMenuBar mb=new JMenuBar();
JMenu m1=new JMenu("Menu 1");
m1.add(new JMenuItem("opcio 1"));
m1.add(new JMenuItem("opcio 2"));
JMenu m2 =new JMenu("Menu 2");
m2.add(new JCheckBoxMenuItem("opcion 1"));
m2.add(new JCheckBoxMenuItem("opcion 2"));
m2.add(new JCheckBoxMenuItem("opcion 3"));
m2.addSeparator();
m2.add(new JRadioButtonMenuItem("opcion 4"));
mb.add(m1);
mb.add(m2);
f.setJMenuBar(mb);
f.setVisible(true);


}

}

list con array.


package interfazSwing;

import java.awt.FlowLayout;

import javax.swing.JFrame;
import javax.swing.JList;

public class JListTest {

/**
* nos muestra los elementos en una lista
* no desplegable
* @param args
*/
public static void main(String[] args) {
JFrame f=new JFrame();
f.setTitle("Lista test");
f.setSize(200,150);
f.getContentPane().setLayout(new FlowLayout());
String[] list={"Primero","Segundo","Tercero","Cuarto"};
JList l=new JList(list);
f.getContentPane().add(l);
f.setVisible(true);

}

}

etiqueta negrita, cursica ambas con checkbox


package ventanas;

import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JTextField;

public class TiposDeTextoEnCheckBox extends JFrame implements ItemListener{

private JTextField texto;
private JCheckBox negrita;
private JCheckBox cursiva;
private Font fuente;

public TiposDeTextoEnCheckBox()
{
super("Tipos de Texto en CheckBox Test");
this.setLayout(new FlowLayout());
this.setSize(400,500);
this.definirVentana();
this.setVisible(true);

}

public void definirVentana()
{
texto=new JTextField(20);
negrita=new JCheckBox("Negrita");
cursiva=new JCheckBox("Cursiva");
add(texto);
add(negrita);
add(cursiva);
negrita.addItemListener(this);
cursiva.addItemListener(this);
}


public void itemStateChanged(ItemEvent e) {
// TODO Auto-generated method stub
if(negrita.isSelected() && cursiva.isSelected())
{
fuente =new Font("Serief",Font.BOLD|Font.ITALIC,14);
texto.setFont(fuente);
}
else if(cursiva.isSelected())
{
fuente=new Font("Serief",Font.ITALIC,14);
texto.setFont(fuente);
}
else if(negrita.isSelected())
{
fuente=new Font("Serief",Font.BOLD,14);
texto.setFont(fuente);
}
else
{fuente=new Font("Serief",Font.PLAIN,14);
texto.setFont(fuente);}

}
public static void main(String[] args) {
TiposDeTextoEnCheckBox test=new TiposDeTextoEnCheckBox();

}




}

Component JRAdioButton (negrita,cursiva,ambos,plano)



package ventanas;

import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;

import javax.swing.ButtonGroup;
import javax.swing.JFrame;
import javax.swing.JRadioButton;
import javax.swing.JTextField;

public class ComponenteRadioButton extends JFrame implements ItemListener{
//atributos
private JTextField texto;
private JRadioButton negrita, cursiva, ambos, plano;
private ButtonGroup grupo;

//constructor
public ComponenteRadioButton()
{
super("Radio Button TEst");
this.setSize(400,400);
this.setLayout(new FlowLayout());
this.definirVentana();
this.setVisible(true);
}

//metodos varios
private void definirVentana()
{
texto=new JTextField(20);
negrita=new JRadioButton("negrita");
cursiva= new JRadioButton("Cursiva");
ambos =new JRadioButton("ambos");
plano=new JRadioButton("plano");
grupo=new ButtonGroup();

this.add(texto);
this.add(negrita);
this.add(cursiva);
this.add(ambos);
this.add(plano);

grupo.add(negrita);
grupo.add(cursiva);
grupo.add(ambos);
grupo.add(plano);

negrita.addItemListener(this);
cursiva.addItemListener(this);
ambos.addItemListener(this);
plano.addItemListener(this);

}

private Font obtenerFuente(int n)
{
Font resultado=null;
switch(n)
{
case 0:
{
resultado=new Font("Serief",Font.BOLD,14);
break;
}
case 1:
{
resultado=new Font("Serief",Font.ITALIC,14);
break;
}
case 2:
{
resultado=new Font("Serief",Font.BOLD|Font.ITALIC,14);
break;
}
case 3:
{
resultado=new Font("Serief",Font.PLAIN,14);
}
}
return resultado;
}
public void itemStateChanged(ItemEvent arg0)
{
if(negrita.isSelected())
{
texto.setFont(obtenerFuente(0));
}
else if(cursiva.isSelected())
{
texto.setFont(obtenerFuente(1));
}else if (ambos.isSelected())
{
texto.setFont(obtenerFuente(2));
}else if(plano.isSelected())
{
texto.setFont(obtenerFuente(3));
}

}

public static void main(String[] args) {
ComponenteRadioButton cbt=new ComponenteRadioButton();
}
}


calculadora suma y resta


package BotonesYeventos;

import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Color;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.Panel;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

public class Calculadora extends  Frame implements ActionListener,KeyListener
{
private TextField t=null;
private int oper1=0;//primer operando
private int oper2=0;//segundo operando
private String command=null;//operacion

private boolean sw=true;//switch para añadir o brrar digitos.

public Calculadora()
{
this.setTitle("Calculadora");
this.addWindowListener(new MiWindowListener());
this.setLayout(new BorderLayout());

t=new TextField("0");
t.setBackground(Color.YELLOW);
t.addKeyListener(this);
Panel aux=new Panel();
aux.setLayout(new GridLayout(3,4));

Button b=null;
b=new Button("1");
b.addActionListener(this);
aux.add(b);

Button b1=null;
b1=new Button("2");
b1.addActionListener(this);
aux.add(b1);
Button b2=null;
b2=new Button("3");
b2.addActionListener(this);
aux.add(b2);
Button b3=null;
b3=new Button("+");
b3.addActionListener(this);
aux.add(b3);
Button b4=null;
b4=new Button("4");
b4.addActionListener(this);
aux.add(b4);
Button b5=null;
b5=new Button("5");
b5.addActionListener(this);
aux.add(b5);
Button b6=null;
b6=new Button("6");
b6.addActionListener(this);
aux.add(b6);
Button b7=null;
b7=new Button("-");
b7.addActionListener(this);
aux.add(b7);
Button b8=null;
b8=new Button("7");
b8.addActionListener(this);
aux.add(b8);
Button b9=null;
b9=new Button("8");
b9.addActionListener(this);
aux.add(b9);
Button b10=null;
b10=new Button("9");
b10.addActionListener(this);
aux.add(b10);
Button b11=null;
b11=new Button("=");
b11.addActionListener(this);
aux.add(b11);

this.add(t,BorderLayout.NORTH);
this.add(aux,BorderLayout.CENTER);

this.add(aux,BorderLayout.CENTER);
}

public void actionPerformed(ActionEvent ev)
{
String aux=((Button)ev.getSource()).getLabel();
if(aux.equals("+")||aux.equals("-"))
{
command=aux;
oper1=Integer.parseInt(t.getText());
sw=true;
}
else if(aux.equals("="))
{
oper2=Integer.parseInt(t.getText());
if(command.equals("+"))
{
t.setText(new Integer(oper1+oper2).toString());
oper1=oper1+oper2;//permite teclear un numero
}
else
{
t.setText(new Integer(oper1-oper2).toString());
oper1=oper1-oper2;
}
sw=true;
}
else
{
if(sw)
{
t.setText(aux);
sw=false;
}
else
t.setText(t.getText()+aux);
}
}
public void keyPressed(KeyEvent ev)
{

}
//se ha producido un evento de tipo keyreleassed
public void keyReleased(KeyEvent ev)
{
char tmp=ev.getKeyChar();
if(!Character.isDigit(tmp))
{
t.setText(t.getText().substring(0,t.getText().length()-1));
t.setCaretPosition(t.getText().length());//posicionar al final del texto
}
}

//seha prodicido un key event de tipo keytyped
public void keyTyped(KeyEvent ev)
{

}
}
--------------------------------


package BotonesYeventos;

public class CalculadoraTest {

/**
* @param args
*/
public static void main(String[] args) {
Calculadora c =new Calculadora();
c.pack();
c.setVisible(true);

}

}


miércoles, 29 de febrero de 2012

de Extfiel a String y a consola


package practicaAWT;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;

/**
 * Realizar una aplicacion que muestre una ventana con un TExtfield. Todod el texto introducido en el mismo debera ser mostrado
 *  en la ventana y en la linea de comandos. TAmbien se deberá detectar el evento de cierre de ventana
 * @author Usuario
 *
 */
public class TExFielALineaDeComandoYVEntana extends Frame implements ActionListener/*,KeyListener*/{

TextField texto;
String linea=" ";

public TExFielALineaDeComandoYVEntana(){
super("Evento con Textfield");
setLayout(null);
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
setSize(400,200);
setVisible( true);
System.out.println("Bienvenido...");
texto=new TextField();
texto.setBounds(50,50,200,30);
add(texto);
texto.addActionListener(this);
//texto.addKeyListener(this);
}

public void actionPerformed(ActionEvent e) {
if(e.getSource()instanceof TextField){
texto=(TextField)e.getSource();
linea=texto.getText();
texto.setText(" ");
}
repaint();
}

public void paint(Graphics g)
{
g.drawString(linea, 75,40);
System.out.println(linea);
}
public static void main(String[] args) {
TExFielALineaDeComandoYVEntana a=new TExFielALineaDeComandoYVEntana();
a.show();
}

/** @Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_ENTER){
System.out.println(linea);
}

}

@Override
public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub

}

@Override
public void keyTyped(KeyEvent arg0) {
// TODO Auto-generated method stub

}**/
}