0% encontró este documento útil (0 votos)
111 vistas38 páginas

POO3

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1/ 38

Ao de la Inversin para el Desarrollo Rural y la Seguridad Alimentaria

REVALIDADO R.D. 0048 2006 ED

CURSO:
LENGUAJE DE PROGRAMACION VI - JAVAII

ALUMNO:
HERNANDEZ AQUIJE, VICTOR JEANPIER

DOCENTE:
HERRERA VARGAS, YANINE

SEMESTRE:
VI- A NOCHE

Ica 2013 Per

Elementos de POO en Netbeans Programacin Grfica. Swing: Contenedores


La librera AWT (Abstract Windows Toolkit)
Constituye una biblioteca de clases Java para el desarrollo de Interfaces de Grficas de Usuario. Es una de las primeras bibliotecas de clases integrada en el JDK estndar. Se tard en desarrollar tan slo dos meses, debido a lo cual, el entorno que ofrece es demasiado simple. En su momento represent un cambio notable, sobre todo en lo que respecta al modelo de eventos. La versin 1.2 incorpor un modelo distinto de componentes llamado Swing. Estructura del AWT La estructura de la versin actual del AWT podemos resumirla en los puntos que exponemos a continuacin: Los Contenedores contienen Componentes, que son los controles bsicos. No se usan posiciones fijas de los Componentes, sino que estn situados a travs de una disposicin controlada (layouts). El comn denominador de ms bajo nivel se acerca al teclado, ratn y manejo de eventos. Alto nivel de abstraccin respecto al entorno de ventanas en que se ejecute la aplicacin (no hay reas cliente, ni llamadas a X, ni hWnds, etc.). Es bastante dependiente de la mquina en que se ejecuta la aplicacin (no puede asumir que un dilogo tendr el mismo tamao en cada mquina).
Componentes y Contenedores

Una interface grfica est construida en base a elementos grficos bsicos, los Componentes. Tpicos ejemplos de estos Componentes son los botones, barras de desplazamiento, etiquetas, listas, cajas de seleccin o campos de texto. Los Componentes permiten al usuario interactuar con la aplicacin y proporcionar informacin desde el programa al usuario sobre el estado del programa. En el AWT, todos los Componentes de la interface de usuario son instancias de la clase Component o uno de sus subtipos. Los Componentes no se encuentran aislados, sino agrupados dentro de Contenedores. Los Contenedores contienen y organizan la situacin de los Componentes; adems, los Contenedores son en s mismos Componentes y como tales pueden ser situados dentro de otros Contenedores.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans

Tambin contienen el cdigo necesario para el control de eventos, cambiar la forma del cursor o modificar el icono de la aplicacin. En el AWT, todos los Contenedores son instancias de la clase Container o uno de sus subtipos.

La librera SWING
Hay que entender que Swing no es una sustitucin de AWT, simplemente es una extensin de sta, aunque a veces de esa sensacin como en los distintos componentes como botones, paneles, etc. Swing, aparte de tener mayor cantidad de opciones sobre los componentes (como distintas apariencias, control sobre el focus, mayor nmero de campos que modifican su aspecto,...) se diferencian de las anteriores radicalmente en su implementacin. Por ejemplo, cuando en AWT se aada un botn, el compilador generaba cdigo que le peda al S.O. la creacin de un botn en un determinado sitio con unas determinadas propiedades, en Swing, sin embargo, no se le pide al S.O. nada, se dibuja el botn sobre la ventana en la que se desea y punto. Con esto se han eliminado muchos problemas que existan antes con los cdigos de las interfaces grficas, que debido a depender del S.O. para obtener sus componentes grficos, era necesario testar los programas en distintos S.O., pudiendo tener distintos bugs en cada uno de ellos. Con Swing se ha mejorado bastante este aspecto, lo nico que se pide al S.O. es una ventana, una vez dibujada la ventana, se dibujan los botones, listas, scrollbars.... y todo lo que se necesita sobre ella. Evidentemente esta aproximacin gana mucho en lo que a independencia de la plataforma se refiere. Adems, el hecho de que un botn no sea del S.O. sino que sea dibujado por Java ofrece un mayor control sobre su apariencia. Para ejemplos, los ms adecuados y espectaculares son los que proporciona JavaSoft con Swing, bajo la carpeta "demo" que se genera en la instalacin del JDK. Particularmente interesante es la aplicacin que ellos llaman SwingSet2, cuya pantalla inicial consta de una serie de pestaas que corresponden, cada una de ellas, a uno de los aspectos de Swing.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Ventanas en Swing
Es el principal contenedor que se emplea para situar en l todos los dems componentes que se necesiten para el desarrollo de la interface. La jerarqua de este tipo de componente parte, como todos desde Object, que digamos es la superclase de la cual heredan todos los objetos en Java.

Paneles en Swing
JPanel
Una vez construido la ventana (frame) se podra pensar en ir aadiendo los componentes que se fuesen necesitando sin ms, pero no es considerado la mejor tcnica de programacin aadir componentes directamente sobre los contenedores pesados como son las ventanas o los applets, que veremos posteriormente. Para ello se utiliza unos contenedores menos pesados que son los paneles. Las ventajas que tiene el empleo de paneles son varias, entre otras la modularidad en el diseo del interfaz ya que cada panel puede tener su propia disposicin de elementos as como su propio diseo gracias a mtodos como paintComponent, como ya se ver. Para aadir un JPanel lo primero que se debe de hacer es obtener uno de los objetos que forman el frame o ventana, el contenedor de paneles, content pane. Para ello se invocar el mtodo getContentPane de la clase JFrame. El objeto que obtenemos es de tipo Container.

A continuacin se invoca el mtodo add del Container obtenido para aadir el panel, pasndole el propio panel al mtodo:

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Metodo Constructor

Principales Metodos

JDesktopPane
Un LayeredPane o panel por capas, es un panel que proporciona una tercera dimensin para el posicionamiento de componentes: el eje Z, o dicho de otra manera, la profundidad. Cuando aadimos un componente a un panel por capas debemos especificar la profundidad que va a tener. Para ello, en un LayeredPane se definen varias capas o profundidades.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans

JScrollPane
Mediante esta clase se crear una herramienta que permite una visin desplazable de otro componente. Un ScrollPane suele utilizarse para mostrar un componente que es muy grande y no puede observarse en su totalidad, o para mostrar un componente cuyo tamao puede variar dinmicamente.

Vigilantes de los ScrollBars

Un ScrollPane solo muestra sus barras de desplazamiento o ScrollBars cuando son necesarias. Es decir, imaginemos que en la aplicacin anterior agrandamos la ventana hasta que la lista swing cabe perfectamente en ella: En este caso, ambas barras de desplazamiento ya no son necesarias. Este comportamiento est controlado por el vigilante de ScrollBar (realmente existen 2 vigilantes, uno por cada barra de desplazamiento). Los vigilantes de ScrollBar pueden establecerse o fijarse a travs de los mtodos setHorizontalScrollBarPolicy y setVerticalScrollBarPolicy. Con ambos mtodos se utilizan los enteros definidos en la interface ScrollPaneConstants que es implementada por JScrollPane. Los posibles valores de estos enteros son:

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans

Principales Metodos

JTabbedPane
La clase JTabbedPane, permite al usuario tener varios componentes compartiendo el mismo espacio, de manera que puede elegir el componente deseado mediante un clic en una pestaa.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Una de las ventajas de esta estructura, es que el programador no tiene que manejar eventos a la hora de cambiar el panel activo del JTabbedPane, ya que es el propio objeto quin se encarga de ello Metodos Constructores

Principales Metodos

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


JSplitPane
Un JSplitPane es un contenedor de swing que permite situar dos componentes de peso ligero (aquellos componentes que no son contenedores) separados por una lnea divisoria. Esta lnea divisoria permite especificar al usuario la cantidad de rea que pertenece a cada componente; para ello, el usuario tan slo tendr que arrastrar dicha lnea divisoria. Este objeto es til cuando se quiere mostrar dos componentes que contienen informacin relacionada, de manera que el usuario pueda cambiar el tamao relativo de dichos componentes. Cuanto ms tamao se le d a un componente, menor ser el rea de visualizacin del otro componente. La divisin puede ser horizontal o vertical, segn se indique en el constructor o en el mtodo setOrientation(), las constantes VERTICAL_SPLIT u HORIZONTAL_SPLIT. La llamada al mtodo setOneTouchExpandable(true) hace que el JSplitPane muestre controles que permitan al usuario ocultar uno o los dos componentes y asignar todo el espacio al otro componente. Hay que sealar que un Split Pane no permite que el usuario haga que un componente sea ms pequeo que su tamao mnimo. Un ejemplo de Split Pane se muestra a continuacin:

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Metodo Constructor

Principales Metodos

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans

JOptionPane: E/S de datos con GUIS


La biblioteca de clases estndar de Java incluye una amplia gama de componentes para la construccin de interfaces grficas de usuario. El componente JOptionPane se puede emplear para obtener datos de entrada y mostrar mensajes de salida. Entrada de Datos. La entrada de datos mediante este componente se realiza mediante el comando showInputDiaglog con diferentes parmetros se consiguen distintos tipos de paneles: JOptionPan.showInputDialog(Introduce un valor);

JOptionPane.showInputDialog(null,Introduzca un valor, Mi programa en Java,JOptionPane.QUESTION_MESSAGE);

JOptionPane.showInputDialog(null,Introduzca un valor, Otro programa en Java, JOptionPane.INFORMATION_MESSAGE);

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


JOptionPane.showMessageDialog(null,Bienvenido a Java!);

JOptionPane.showMessageDialog(null,Bienvenido a Java!,Programa de ejemplo, JOptionPane.INFORMATION_MESSAGE);

JOptionPane.showMessageDialog(null,Bienvenido a Java!,Programa de ejemplo, JOptionPane.ERROR_MESSAGE);

JEditorPane y JTextPane
Java proporciona varios componentes visuales que permiten escribir y tratar un texto. El componente base para este grupo de objetos java es el JEditorPane y su componente principial JText Pane que permite ms parametrizacin del texto que contiene como el color, la fuente o los tamaos de las letras e incluso permite hasta la insercin de iconos basndose en la clase Icon de Java u otro tipo de componentes Java como botones, etiquetas, etc... Sin embargo, estos componentes no tienen mtodos para ir aadiendo poco a poco el texto. Simplemente tienen un mtodo setText() al que se pasa todo el texto de golpe. Para poder trabajar ms cmodamente con estos objetos es preferible obtener el objeto Document asociado al componente, mediante el mtodo getDocument() y trabajar con l ya que este objeto s posee mtodos para ir aadiendo texto poco a poco.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans

Programacin Grfica. Swing: Componentes


Componentes Swing
Una interface grfica est construida en base a elementos grficos bsicos, los Componentes. Tpicos ejemplos de estos Componentes son los botones, barras de desplazamiento, etiquetas, listas, cajas de seleccin o campos de texto. Los Componentes permiten al usuario interactuar con la aplicacin y proporcionar informacin desde el programa al usuario sobre el estado del programa. Todos los Componentes de la interface de usuario son instancias de la clase Component o uno de sus subtipos.

Etiquetas: JLabel
De todos los componentes de interfaz de usuario que proporciona Java, las etiquetas son, sin lugar a duda, los ms sencillos. Las etiquetas se utilizan para situar fragmentos de texto o imgenes en la pantalla, de manera que su uso ms comn es dar ttulo a otras reas o a otros componentes Swing. Las etiquetas presentan 3 formas de alineamiento: LEFT o izquierda (JLabel.LEFT). CENTER o centrada (JLabel.CENTER). RIGHT o derecho (JLabel.RIGTH). Un ejemplo de la utilizacin de este componente podra ser el siguiente en el que se muestran las distintas construcciones del componente JLabel:

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Metodo Constructor

Principales Metodos

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Botones de Radio: JRadioButton
Los Botones de Radio son grupos de botones en los que, por convencin, slo uno de ellos puede estar seleccionado. Swing soporta botones de radio con las clases JRadioButton y ButtonGroup. Swing tambin ofrece la posibilidad de poner radio botones dentro de un men, como ya veremos ms adelante. Esto se consigue utilizando la clase JRadioButtonMenuItem.

Metodos Constructores

Principales mtodos

Esta clase hereda todos los mtodos de AbstractButton. Se recomienda consultar sus mtodos en la pgina de documentacin del api de Java.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


ButtonGroup
Esta clase se usa para crear un conjunto de botones con exclusin entre ellos, es decir, cuando se seleccione un botn, todos los dems se deseleccionarn automticamente. Este componente pude usarse con cualquier conjunto de objetos herede de la clase AbstractButton. Normalmente se utiliza para instancias de JRadioButton. JRadioButtonMenuItem o JToggleButton. No se podr utilizar con instancias de componentes como JButton o JMenuItem ya que stos no implementan ningn mtodo para obtener su estado de seleccin (si est o no seleccionado). Inicialmente todos los botones en un grupo no estn seleccionados. Una vez que se seleccione uno, a partir de ah, siempre habr uno de ellos seleccionado. Hay que resaltar que cuando se define un ButtonGroup no se est definiendo un componente nuevo, simplemente se est indicando que el conjunto de componentes que lo componen tienen las caractersticas que se han indicado anteriormente. A la hora de insertarlo en la ventana habr que insertar cada uno de los botones, no se podr insertar el grupo de botones creado ya que como tal no existe.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Componente de chequeo: JCheckBox
Los checkbox son similares a los radiobutton con la excepcin de que en stos s que puede haber ms de uno de ellos seleccionado, o ninguno. Swing tambin permite insertar este tipo de componentes en mens. Esto se consigue a travs de la clase JCheckBoxMenuItem que veremos posteriormente. Tanto la clase JCheckBox, como la clase JChekBoxMenuItem, son subclases de AbstractButton, por lo que heredan su funcionalidad.

Metodos Constructores

Principales mtodos

Esta clase hereda todos los mtodos de AbstractButton. Se recomienda consultar sus mtodos en la pgina de documentacin del api de Java.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Componente Combo: JComboBox
Swing permite la construccin de dos tipos de ComboBox mediante su clase JComboBox que son los editables y los no editables. Por defecto este componente se crea NO editable. Tanto uno como otro constan, bsicamente, de una lista desplegable. La primera lnea de ComboBox permite escribir una opcin que no se ajusta a las mostradas en la lista. Esto sera un ejemplo de un JComboBox NO editable donde al usuario no se le permite que introduzca ningn valor, simplemente que seleccione uno de ellos. Metodos Constructores

Principales Metodos

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Botones: JButton A la hora de crear un botn swing debemos instanciar un elemento de la clase JButton, que a su vez es subclase de AbstractButton. Esta ltima clase, es superclase de algunos elementos swing que vamos a ver con posterioridad:

Los botones swing son, sin lugar a dudas, ms completos que los botones utilizados por AWT. Prueba de ello, es que pueden incluir tanto imgenes como texto, podemos utilizar mnemnicos o teclas alternativas para pulsarles...etc. Los mnemnicos o teclas alternativas se denominan tambin teclas aceleradoras, debido a que se utilizan cuando se quiere hacer clic en un botn sin utilizar el ratn, pulsando simplemente la tecla concreta del teclado, ahorrando con ello tiempo. El aspecto de una serie de botones swing podra ser el siguiente:

Baste como introduccin al tema de eventos este ejemplo en el cual cuando el usuario pulsa un botn se genera un evento, en este caso de tipo action. Como consecuencia de este hecho se ha implementado un oyente para este tipo de eventos, un listener. El tema eventos se tratar ms en profundidad en un tema siguiente. Metodo Constructor

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Principales Mtodos

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans

Areas de Texto: JTextField y JtextArea Los campos de texto o textfield se utilizan cuando se necesita un rea donde el usuario pueda introducir un fragmento relativamente pequeo de informacin, como el nombre, un identificador, un password,...

Si nos fijamos, el rea que muestra los mensajes, es editable, es decir, el usuario puede situarse en este componente y escribir o borrar su contenido. Tambin se podra hacer que este rea de visualizacin de mensajes sea no editable evitando esta posibilidad.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Metodo Constructor para JTextArea

Metodo Constructor para JtextField

Principales Metodos para JtextArea

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Principales Metodos para JtextField

Campos de Contrasea : JpasswordField Swing proporciona la posibilidad de crear campos de texto para introducir passwords o palabras claves mediante la clase JPasswordField. Esta clase es una subclase de JTextField, por lo que todos los mtodos utilizados con los campos de texto podrn ser tambin utilizados con estos campos de texto para password.

Metodo Constructor

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Principales Metodos

Barras Desplazables : Jslider La clase JSlider proporciona al programa dor la capacidad de elaborar un slider. Un slider permite al usuario elegir un valor (generalmente numrico) comprendido entre un mnimo y un mximo, evitando con ello posibles errores de entrada que se hubieran producido al utilizar otras estructuras, como por ejemplo, un textfield o campo de texto.

Como se puede observar, el slider es simplemente una barra con un indicador desplazable. Pero el slider anterior es demasiado sencillo, ya que nos e sabe la posicin en la que se encuentra a no ser que incorporemos una etiqueta como en el caso anterior, que nos indique qu valor va cogiendo en cada momento.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Por esta razn, Swing permite al programador incorporar marcas que ayuden al usuario a saber el punto que est seleccionando. Existen dos clases de marcas: Marcas mayores: que se fijan a travs de el mtodo setMajorTickSpacing(int) (equivalen, por ejemplo, a los centmetros en una regla). Marcas menores: que se fijan a travs de el mtodo setMinorTickSpacing(int) (equivalen a los milmetros de una regla). En este caso se le indicar en qu milmetro se quiere la marca, es decir, si se indica 5 el resultado ser pero con 8 ser

es decir, se dibuja una marca cada 8 posiciones empezando desde el inicio. El programador puede fijar solo las marcas mayores, solo las menores o ambas al mismo tiempo. Una vez fijadas las marcas, se debe indicar que han de ser mostradas. Esto se har mediante los mtodos setPaintTicks(true) y setPaintLabels(true). Se han de incluir ambos mtodos, ya que si nicamente incluimos el primero las marcas no sern mostradas. El aspecto de un slider con marcas sera el siguiente:

Tambin es posible que en vez de poner marcas numricas en el deslizador, se quiera que contenga algn tipo diferente de mensaje. Para ello, se tendr que crear una Hashtable (tabla hash) que contenga el valor de cada etiqueta y la posicin donde debe ser colocada. Un ejemplo de un slider con etiquetas sera el siguiente: El aspecto del slider es el mismo que en los casos anteriores, con la diferencia que en vez de indicarnos, cada 10 o 25 posiciones, el lugar donde nos encontramos, se indica el tanto por ciento que se ha recorrido del slider. Este es solo un ejemplo del tipo de mensaje que se puede incluir en el slider. Por ejemplo, supongamos que tenemos una aplicacin multimedia, donde aparece un slider que sirve para controlar el volumen de un reproductor de CD. En este caso, sera aconsejable, establecer etiquetas en el slider que indicaran el grado del volumen (por ejemplo: bajo, normal, alto y muy alto). Adems, se debe resaltar, que las etiquetas pueden ser tanto texto como imgenes, pudiendo combinar ambos.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Mtodo Constructor

Principales Metodos

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Tablas: Jtable Las tablas en Java no almacenan datos, tan slo sirven para mostrar una determinada informacin. Un JTable es un componente visual de java que nos permite dibujar una tabla, de forma que en cada fila/columna de la tabla podamos poner el dato que se desee; un nombre, un apellido, una edad, un nmero, etc.

En principio este componente se cre para constituir un interfaz ligado a bases de datos a travs del Java Database Connectivity (JDBC, para los amigos), y as evitar la complejidad inherente al manejo de los datos, proporcionando mucha flexibilidad al programador. Evidentemente existen caractersticas que pueden hacerlo muy complejo, desde la obtencin de los datos desde una hoja de clculo o desde bases de datos de diferente naturaleza, sin embargo tambin es posible crear una Jtable relativamente simple si se entiende correctamente el funcionamiento. La JTable controla cmo se presentan los datos, siendo el componente TableModel quien controla los datos en s mismos. Para crear una JTable habr pues que crear un TableModel antes, normalmente. Se puede implementar, para ello, el interfaz TableModel, pero es mucho ms simple heredar de la clase ayuda AbstractTableModel. Por defecto, todas las columnas de la tabla tienen la misma anchura, de modo que la suma de la anchura de las columnas ser igual al tamao de la tabla (por ejemplo, si nuestra tabla tiene 25 pxeles y 5 columnas, cada columna tendr inicialmente y por defecto, una anchura de 5 pxeles (25 pxeles/5 columnas = 5 pxeles por columna)). Pero existen 2 casos en los que la anchura de las columnas de una tabla se va a modificar: 1. Que el usuario cambie el tamao total de la tabla (ocurre, por ejemplo, cuando se redimensiona la ventana que contiene a la tabla). En este caso, la anchura de todas las columnas se modifica para amoldarse al nuevo tamao de al tabla.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


2. Que el usuario modifica la anchura de una sola columna. Cuando el usuario ajusta el tamao de una columna moviendo su borde derecho, todas las columnas que se encuentran a la derecha del punto de arrastre modifican su anchura para acomodarse el nuevo espacio con el que cuentan. Inicialmente, todas las columnas tienen la mis ma anchura:

Bien, pues se puede cambiar el comportamiento del redimensionado por defecto en el segundo caso (se modifica la anchura de un sola columna) a travs del mtodo setAutoResizeMode. El argumento de este mtodo debe ser una de estas 3 constantes definidas en JTable: AUTO_RESIZE_SUBSEQUENT_COLUMNS: es el valor por defecto ya explicado anteriormente. Adems de redimensionar la columna que cambia de tamao, ajusta el tamao de todas las columnas que se encuentran a la derecha del punto de arrastre. AUTO_RESIZE_NEXT_COLUMN: ajusta nicamente las columnas inmediatas a la izquierda y derecha del punto de arrastre. AUTO_RESIZE_OFF: ajusta el tamao de la tabla total. En el caso de que queramos que una de nuestras columnas tenga un tamao diferente de las dems, sin necesidad de redimensionarla con el ratn cada vez que se cree la tabla, podemos utilizar el mtodo setPreferredWidth(int). Por defecto, una tabla permite que el usuario seleccione una o varias filas contiguas. Pero, a pesar de ello, se permite al programador que establezca su propio modelo de seleccin de filas. Esto se conseguir a travs del mtodo setSelectionMode pasndole como parmetro una de las siguientes constantes, definida en la interfaz ListSelectionModel:
SINGLE_SELECTION: solo puede ser seleccionada una fila de la tabla. SINGLE_INTERVAL_SELECTION: se pueden seleccionar varias filas de la tabla, siempre y cuando, sean contiguas, es decir, que aparezcan seguidos en la tabla. MULTIPLE_INTERVAL_SELECTION: es el valor por defecto y permite seleccionar cualquier combinacin de filas de la tabla.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Mens
En Swing los mens estn mejor desarrollados y son ms flexibles que otros componentes. Su sintaxis es la misma que en AWT, y el inconveniente es que no hay ningn mtodo para disear mens, todo es fruto de la codificacin del programador por lo que a veces el resultado es un cdigo demasiado largo y no tan claro como nos gustara. A la hora de crear un men se realizar de la siguiente manera: crear una barra de mens a travs de JMenuBar. crear el nmero de mens que queremos que aparezcan en la barra de mens a travs de JMenu. crear el nmero de items de men que queremos que aparezcan en cada men, a travs de las clases: JMenuItem: si el item es normal, es decir, texto, imagen o ambos. JCheckboxMenuItem: si el item es un checkbox. JRadioButtonMenuItem: si el item es un radiobutton. Adems existen 2 clases especiales: JPopupMenu: clase que crea mens desplegables. JSeparator: clase que crea separadores La interface MenuContainer solamente se puede implementar sobre un JFrame. Una aplicacin que desee tener un JMenu debe crear un JFrame en primer lugar. Veamos un ejemplo:

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


JmenuItem
Este es uno de los componentes con los cuales se crean los mens en Swing. El JMenuItem, esencialmente, se podr crear de dos formas: Un componente de tipo texto Un componente con una imagen asociada Swing tambin ofrece la posibilidad de configurar una tecla alternativa para cada uno de sus componentes.
Veamos un ejemplo de JmenuItem:

CheckBox en Mens: JcheckBoxMenuItem


Al igual que los siguientes, estas clases heredan las caractersticas de JMenuItem, es decir, bsicamente los componentes con los que se construyen los mens. En este caso existe una ligera diferencia, el componente que se va a insertar en el men no es un simple item, es un componente de tipo checkbox. De esta forma, se podr insertar desde simples estructuras checkbox hasta conjunto de ellas con las caractersticas que se quieran dar.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


RadioButton en Mens: JradioButtonMenuItem
En este caso podemos insertar varios RadioButton dentro de un men. Esto se consigue utilizando la clase JRadioButtonMenuItem

FileChooser
Esta clase proporciona un UI para elegir un fichero de una lista. Un selector de ficheros es un componente que podemos situar en cualquier lugar del GUI de nuestro programa. Sin embargo, normalmente los programas los muestran en dilogos modales porque las operaciones con ficheros son sensibles a los cambios dentro del programa. La clase JFileChooser hace sencillo traer un dilogo modal que contiene un selector de ficheros. Los selectores de ficheros se utilizan comnmente para dos propsitos: Para presentar una lista de ficheros que pueden ser abiertos por la aplicacin. Para permitir que el usuario seleccione o introduzca el nombre de un fichero a grabar. El selector de ficheros ni abre ni graba ficheros. Presenta un GUI para elegir un fichero de una lista, nada ms. El programa ser el responsable de hacer algo con el fichero, como abrirlo o grabarlo.

En este caso, cuando el usuario pulsa el botn Open se muestra un JfileChooser para que pueda elegir el fichero a abrir, cuando pulsa el botn Save se mostrar otro JFileChooser con la opcin de guardar el fichero.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Por defecto, un selector de ficheros que no haya sido mostrado anteriormente muestra todos los ficheros en el directorio del usuario. Podemos especificarle un directorio inicial utilizando uno de los otros constructores de JFileChooser, o podemos seleccionar el directorio directamente con el mtodo setCurrentDirectory. El programa de ejemplo utiliza el mismo ejemplar de JFileChooser para mostrar el selector de grabar ficheros, lo nico que cambiar ser su comportamiento, es decir, el mtodo actionPerformed para el oyente de cada botn:

Si el usuario elige un fichero, el cdigo llama a getSelectedFile sobre el selector de ficheros para obtener un ejemplar de File, que representa el fichero elegido. El ejemplo obtiene el nombre del fichero y lo utiliza en un mensaje. Podemos utilizar otros mtodos del objeto File, como getPath o isDirectory, para obtener informacin sobre l. Tambin podemos llamar a otros mtodos como delete y rename para cambiar el fichero de alguna forma. Por supuesto, podramos leer o grabar el fichero utilizando una de las clases lectoras o escritoras proporcionadas por el JDK.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Metodo Constructor

Principales Metodo

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Selector de color: JcolorChooser
La clase JColorChooser proporciona a los usuarios una paleta para elegir colores. Un selector de color es un componente que se puede situar en cualquier lugar dentro del GUI de un programa. El API de JColorChooser tambin hace sencillo desplegar un dilogo (modal o no) que contiene un selector de color. Aqu tienes una imagen de una aplicacin que utiliza un selector de color para seleccionar el color de fondo de un banner:

Un selector de color utiliza un ejemplar de ColorSelectionModel para contener y manejar la seleccin actual. Este dispara un evento "change" si el usuario cambia el color del selector. El programa de ejemplo registra un oyente de "change" con el ColorSelectionModel para poder actualizar el banner de la parte superior de la ventana.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Metodo Constructor

Principales Metodo

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans

Barras de Herramientas: JtoolBar


Un objeto JToolBar crea una barra de herramientas con iconos, dentro de una fila o una columna. Normalmente las barras de herramientas proporcionan acceso a funcionalidades que tambin se encuentran en tems de mens.

El componente JToolBar dispone entre sus mtodos de uno, setFloatable(boolean) que permite que la barra de herramientas tenga un comportamiento flotable, es decir que sea movible a otro punto del componente contenedor.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

Elementos de POO en Netbeans


Mtodo Constructor

Arboles: JTree
Con la clase JTree, se puede mostrar un rbol de datos. JTree realmente no contiene datos, simplemente los visualiza. Aqu tienes una imagen de un rbol: Como muestra la figura, JTree muestra los datos verticalmente. Cada fila contiene exactamente un tem de datos (llamado un nodo). Cada rbol tiene un nodo raz (llamado Root en la figura anterior, del que descienden todos los nodos. Los nodos que no pueden tener hijos se llaman nodos leaf (hoja). En la figura anterior, el aspecto-y-comportamiento marca los nodos hojas con un crculo. Los nodos que no sean hojas pueden tener cualquier nmero de hijos, o incluso no tenerlos. En la figura anterior, el aspecto-y-comportamiento marca los nodos que no son hojas con una carpeta. Normalmente el usuario puede expandir y contraer los nodos que no son hojas -- haciendo que sus hijos sea visibles o invisibles -- pulsando sobre l. Por defecto, los nodos que no son hojas empiezan contrados. Cuando se inicializa un rbol, se crea un ejemplar de TreeNode para cada nodo del rbol, incluyendo el raz. Cada nodo que no tenga hijos es una hoja. Para hacer que un nodo sin hijos no sea una hoja, se llama al mtodo setAllowsChildren (true) sobre l.

HERNANDEZ AQUIJE VICTOR JEANPIER

VI A

También podría gustarte