|
|
|
|
Outline ·
[ Estándar ] ·
Lineal+
Dudas...., Robbie!! XD
| rob1104 |
Jun 16 2006, 08:02 PM
|
Xbox Live... The best thing ever happened around videogames

Grupo: Moderadores
Mensajes: 1.665
Registrado: 7-March 05
Desde: Matamoros, Tamaulipas, Mexico
Miembro nº: 93.342

|
Hola blizknight, gracias a ti por tu confianza, ya que he aprendido un par de cosas que no sabia y he mejorado mas con el lenguaje java que por si no te habias dado cuenta es mi favorito  Para empezar te recomiendo que te alejes de los componentes awt, no es conveniente, estan escritos en codigo nativo de la plataforma y su apariencia depende de la plataforma (claro a vecess es obligatorio usarlos como en los Layout o en el contenedor Container que ahorita explicare) pero para botones, etiquetas, botones de seleccion, cajas de texto, etc... por lo mismo, no estan escritas en java, con la llegada de java 1.2 se implemento la tecnologia swing, que facilita en un 100 % el uso de componentes, porque al estar escritos en codigo Java son ligeros y su apariencia es independiente a la plataforma, el manual que lees talvez este desactualizado y solo se cente en awt, pero lo que quieres hacer, en swing es mucho mas sencillo mira CODE import javax.swing.*; import java.awt.*; public class checkbox extends JFrame { public checkbox() { setSize(400,300); setTitle("Ejemplo CheckBox y GroupCeckBox"); setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); iniciar(); setVisible(true); } private void iniciar() { ButtonGroup cbg =new ButtonGroup(); JRadioButton rojo = new JRadioButton("Rojo"); JRadioButton azul = new JRadioButton("Azul"); JRadioButton verde = new JRadioButton("Verde"); JRadioButton negro = new JRadioButton("Negro"); cbg.add(rojo); cbg.add(azul); cbg.add(verde); cbg.add(negro); getContentPane().setLayout(new GridLayout(0,1)); getContentPane().add(rojo); getContentPane().add(azul); getContentPane().add(verde); getContentPane().add(negro); } public static void main(String args[]) { new checkbox(); } } lee el codigo y te explicare todo, no lo comente por falta de tiempo, pero las dudas las resuelvo con gusto... el metodo add que te refieres es del getContentPane(), que es el panel principal de la aplicacion, y si no agregas mas paneles es en el getContentPane() donde se alinean los controles, y precisamente el componente java.awt.Container es el getContentPane(), si te fijas lo asigne Container c = getContentPane()para en vez de por ejemplo poner getContentPane().setLayout(null),poner c.setLayout(null)Para agregar objetos en un Jpanel llamas a su metodo add JPanel panel1 = new JPanel(); panel1.add(etiqueta);Disculpa si se me paso algo... ando corto en tiempo.. cualquier duda postea bro, entre los dos llegaremos a dominar el lenguaje JAVA saludos
|
|
|
|
|
| rob1104 |
Jun 16 2006, 11:09 PM
|
Xbox Live... The best thing ever happened around videogames

Grupo: Moderadores
Mensajes: 1.665
Registrado: 7-March 05
Desde: Matamoros, Tamaulipas, Mexico
Miembro nº: 93.342

|
negativo.... Container de la clase java.awt es el equivalente al Jpanel de la clase javax.swing (jeje cuantas cosas  ) por alguna extrania razon que aun desconozco el getContentPane() es un objeto java.awt.Container, por lo tanto para asignarlo a una variable y evitar poner su largo nombre y parentesis pues la variable tambien tiene que ser un java.awt.Container vdd?? entonces declaro la variable: CODE Container c; y la asigno CODE c=getContentPane(); Para asignar a un objeto debe ser del mismo tipo si no el compilador marcara error, String: para asignar cadenas de texto Integer: para asgnar numeros java.awt.Container: para asignar contenedores javax.swing.JLabel() para asignar JLabel y asi .....
|
|
|
|
|
| rob1104 |
Jun 17 2006, 04:17 AM
|
Xbox Live... The best thing ever happened around videogames

Grupo: Moderadores
Mensajes: 1.665
Registrado: 7-March 05
Desde: Matamoros, Tamaulipas, Mexico
Miembro nº: 93.342

|
Otra vez te respondo que no exactamente, pero por ahi va la cosa, mira Container es una clase abstracta derivada de Component, que representa a cualquier componente que pueda contener otros componentes. Se trata, en esencia, de añadir a la clase Component la funcionalidad de adición, sustracción, recuperación, control y organización de otros componentes; mas exactamente a un alguno de los siguientes contenedores: -Window -Frame -Dialog -Panel Te preguntaras porque no empiezan con J???  , pues por que son componentes AWT, cada uno tiene su equivalencia a swingWindow - JWindow Frame - JFrame DIalog - JDIalog Panel - JPanel Sabes, en awt puedes agregar los componentes directamente al Frame, sin embargo en swing tienen que agregarse al java.awt.getContentPane() que es un contenedor java.awt.Panel, es el unico componente awt que deberias usar. El Container lo puedes usar con todo lo que sea contenedor, Window, Panel, Frame, Dialog.... un ejemplo sencillisimo es: CODE import java.awt.*; import javax.swing.*; public class miniejemplo { public miniejemplo() { JFrame ventana = new JFrame(); JLabel hola = new JLabel("Hola Mundo"); ventana.setSize(100,100); Container panelPrincipal = ventana.getContentPane(); panelPrincipal.setLayout(new GridLayout(0,1)); panelPrincipal.add(hola); ventana.setVisible(true); } public static void main(String args[]) { new miniejemplo(); } } Recuerda puedes agregar tantos JPanel() como quieras sobre el getContentPane(), pero el getContentPane() siempre sera el panel principal de un JFrame Salu2
|
|
|
|
|
| rob1104 |
Jun 17 2006, 06:08 PM
|
Xbox Live... The best thing ever happened around videogames

Grupo: Moderadores
Mensajes: 1.665
Registrado: 7-March 05
Desde: Matamoros, Tamaulipas, Mexico
Miembro nº: 93.342

|
Ves como te decia que en swing era mas facil, cuando leas un manual por la red verifica que esten hablando de swing y de preferencia de java 1.4 para arriba, asi estaras mas actualizado y sera mucho mas facil de entender.... respecto a los buttongroup asi es, si no añades los JRadioButton al ButtonGroup este actuara como checkbox... Saludos
|
|
|
|
|
| blizknight |
Jun 23 2006, 09:17 PM
|
Maestro
    
Grupo: Members
Mensajes: 265
Registrado: 12-September 04
Miembro nº: 18.538

|
 robbie otra dudilla XD.... como acomodo los radiobuttons?? ya que en el code que me diste no se mueven XD, y si los quiero poner en horizontal y no tan separados? como ejecuto una funcion con solo cambiar el selector del radiobutton? o de un checkbox?? seria con if(e.getsource...... dandole actionlistener al radiobutton? saludos y graxias XD pues acabo de revisar, ya lo ordene me falto poner setlayout null pero aun sigo sin poder hacer esto mira si esta bien( si el boton x esta seleccionado cambia el texto del label) gracias QUOTE import javax.swing.*; import java.awt.*; public class checkbox extends JFrame { public checkbox() { setSize(400,300); setTitle("Ejemplo CheckBox y GroupCeckBox"); setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); iniciar(); setVisible(true); } private void iniciar() { ButtonGroup cbg =new ButtonGroup(); JRadioButton rojo = new JRadioButton("Rojo"); JRadioButton azul = new JRadioButton("Azul"); JRadioButton verde = new JRadioButton("Verde"); JRadioButton negro = new JRadioButton("Negro"); cbg.add(rojo); cbg.add(azul); cbg.add(verde); cbg.add(negro); getContentPane().setLayout(new GridLayout(0,1)); getContentPane().add(rojo); getContentPane().add(azul); getContentPane().add(verde); getContentPane().add(negro); rojo.setBounds(25,35,60,15); negro.setBounds(25,55,60,15); azul.setBounds(25,75,60,15); verde.setBounds(25,95,60,15); getContentPane().setLayout(null); JLabel lbl; lbl = new JLabel("hola"); lbl.setBounds(50,120,100,100); getContentPane().add(lbl); } public void actionPerformed(ActionEvent e){ if(rojo.isSelected()==true){ lbl.setText("rjoi"); } } public static void main(String args[]) { new checkbox(); } }
|
|
|
|
|
| rob1104 |
Jun 23 2006, 11:08 PM
|
Xbox Live... The best thing ever happened around videogames

Grupo: Moderadores
Mensajes: 1.665
Registrado: 7-March 05
Desde: Matamoros, Tamaulipas, Mexico
Miembro nº: 93.342

|
Si andabas un poquito perdido CODE import javax.swing.*; import java.awt.*; import java.awt.event.*; //se te olvido este import public class checkbox extends JFrame { public checkbox() { setSize(400,300); setTitle("Ejemplo CheckBox y GroupCeckBox"); setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); iniciar(); setVisible(true); } private void iniciar() { ButtonGroup cbg =new ButtonGroup(); //declararas como final para que pueda ser accesada de la clase final JRadioButton rojo = new JRadioButton("Rojo"); final JRadioButton azul = new JRadioButton("Azul"); final JRadioButton verde = new JRadioButton("Verde"); final JRadioButton negro = new JRadioButton("Negro");
cbg.add(rojo); cbg.add(azul); cbg.add(verde); cbg.add(negro); getContentPane().setLayout(new GridLayout(0,1)); getContentPane().add(rojo); getContentPane().add(azul); getContentPane().add(verde); getContentPane().add(negro); rojo.setBounds(25,35,60,15); negro.setBounds(25,55,60,15); azul.setBounds(25,75,60,15); verde.setBounds(25,95,60,15); getContentPane().setLayout(null); final JLabel lbl; //igual esta, final lbl = new JLabel("hola"); lbl.setBounds(50,120,100,100); getContentPane().add(lbl); /*Correcion*/ //xD rojo.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if(rojo.isSelected()==true) { lbl.setText("Rojo"); } } }); } public static void main(String args[]) { new checkbox(); } }
|
|
|
|
|
| blizknight |
Jun 25 2006, 01:02 AM
|
Maestro
    
Grupo: Members
Mensajes: 265
Registrado: 12-September 04
Miembro nº: 18.538

|
robbie XD aca una duda de un problema de como hacer esto es como una base de datos pero se puede sin utilizar base de datos?? pues no se me ocurre como ingresar tantos clientes y donde se alamcenan y luego como buscarlos??? saludos CODE Ingresar un cliente
Al seleccionar esta opción se dará paso a un panel de ingreso donde se efectuará el ingreso de un cliente. Para crear un cliente se requieren los siguientes datos: código (entero autogenerado que será mostrado al entrar al panel de ingreso), nombres y apellidos (cadena), DNI (cadena), teléfono (cadena) y saldo de tiempo disponible (entero inicializado en 0). Una vez rellenados los datos del cliente se procederá a grabarlo mediante la pulsación de un botón Ingresar e inmediatamente se volverá al menú Mantenimiento de clientes. Para cancelar el proceso en curso y volver al menú Mantenimiento de clientes se pulsará un botón Regresar.
Modificar un cliente
Al seleccionar esta opción se dará paso a un panel de búsqueda donde se ingresará el código del cliente a modificar y se procederá a buscarlo mediante la pulsación de un botón Buscar. Si el cliente existe se pasará a un panel de modificación donde se mostrarán los datos del cliente encontrado (código, nombres y apellidos, DNI, teléfono y saldo de tiempo disponible) cada uno en un JTextField. Todos los datos serán mostrados como editables a excepción del código que será no editable. Una vez modificados los datos se procederá a grabar los cambios mediante la pulsación de un botón Modificar e inmediatamente se volverá al menú Mantenimiento de clientes. Para cancelar el proceso en curso y volver al menú Mantenimiento de clientes se pulsará un botón Regresar.
|
|
|
|
|
| rob1104 |
Jun 28 2006, 05:07 PM
|
Xbox Live... The best thing ever happened around videogames

Grupo: Moderadores
Mensajes: 1.665
Registrado: 7-March 05
Desde: Matamoros, Tamaulipas, Mexico
Miembro nº: 93.342

|
Claro que es necesario, mira en windows xp es asi: Inicio/Panel de Control/Herramientas administrativas/Origenes de datos(ODBC) Ahora aparecera la ventana con la pestana DNS de Usuario seleccionada, ahi da click en el boton agregar, y selecciona Microsoft Access Driver (*.mdb). Llena todos los campos (Nombre del origen de datos "el que desees", Descripcion so quieres, selecciona la base de datos y listo  , ahora si, sigue el tutorial que puse en el post anterior desde este tema Clases, objetos y métodos básicos, y saldra todo muy bien salu2
|
|
|
|
|
Suscribirse a esta discusión
Recibirás una notificación vía correo cuando haya una respuesta y no estés activos en los foros.
Suscribirse a este foro
Recibirás una notificación vía correo cuando haya una nueva discusión y no estés activo en los foros.
Bajar/imprimir
Podrás bajar esta discusión en varios formatos o ver una versión apta para impresora.

Topicos similares

Topicos similares
|