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);


}

}