Formularios Java Con Scroll
Formularios Java Con Scroll
Formularios Java Con Scroll
Juan Pablo Angamarca. Este va a ser el primero de los pequeos aportes que voy a hacer con respecto a programacin en Java, espero que podamos enriquecer este espacio con preguntas y opiniones. No pretendo ser un experto, de hecho no lo soy, y por eso, es bueno que colaboremos todos. Hace unos das una compaera de segundo ciclo me expuso un problema, al disear un formulario, eran visibles todos los componentes dentro del JFrame, pero en tiempo de ejecucin era necesario cambiar de tamao al formulario y al hacerlo, perdan visibilidad algunos componentes, siendo necesario tener siempre el JFrame en su tamao original para poder ver todo lo que contena. Presento aqu una solucin muy sencilla, para esto necesitaremos: 1) NetBeans IDE y JDK 1.5 o superior. Por cierto, ya est disponible la versin de NetBeans 5.5.1. Usar un IDE ahorra el tener que pelearse con todo el cdigo Java que antes se escriba por cuenta propia. 2) Conocimientos de Java y NetBeans. 3) Un poco de paciencia. Asumiendo que tenemos creado un proyecto, creamos un nuevo JFrame. En este caso, mi clase ser ScrollableJFrame.java.
En el panel Inspector (Men Window > Inspector, suele estar ubicado a la izquierda en el IDE) cambiaremos el nombre de variable del recin insertado objeto a PanelInterfazUsuario. Es una buena prctica de programacin darles nombressignificativos a los componentes, y no dejarlos con el nombre que da el IDE por defecto al insertarlos. En este ejemplo slo renombrar los componentes que interesan por ahora.
Hacemos clic derecho sobre PanelInterfazUsuario y seleccionamos la opcin Design This Container. En la nueva vista insertamos los componentes necesarios para nuestra interfaz. Luego, para volver al JFrame, hacemos doble clic en el componente JFrame en la ficha Inspector.
Insertamos desde la paleta un objeto JScrollPane. Este objeto crear barras de desplazamiento en los bordes del JPanel si no todos sus componentes son visibles con un tamao de formulario dado. Cambiamos el nombre del JScrollPane a scrollFormulario. Si deseamos podemos cambiarle el tipo de borde en la paleta Properties > Border, donde nos aparecer una serie de opciones de borde.
Arrastramos PanelInterfazUsuario sobre scrollFormulario, y lo soltamos cuando aparezcan lneas discontinuas sobre el scrollFormulario. Ambos quedarn fusionados y PanelInterfazUsuario tendr barras de desplazamiento en sus bordes. Ajustamos el tamao del JFrame, seleccionamos el componente scrollFormulario y ajustamos su tamao hasta que coincida con los bordes del formulario.
Si queremos cambiar algn detalle de PanelInterfazUsuario, podemos sacarlo del JScrollPane. Para esto arrastramos su icono en la pestaa Inspector hasta encima del icono del JFrame, de esta forma scrollFormulario y PanelInterfazUsuario quedarn separados de nuevo.
A continuacin ejecutamos ScrollableJFrame.java. Veremos que podemos hacerlo ms grande que su tamao original, pero si lo hacemos ms pequeo, aparecern las barras para ver lo que falta de formulario.
Esto ha sido algo bastante sencillo, y todo necesita prctica. Hasta una prxima oportunidad, agradecer sus preguntas y opiniones.
19 respuestas
11092007
Que tal,,, oye, como puedo recuperar la informacion que el usuario escriba en un cuadro de texto, estoy desarrollando un programa que genera archivos aleatorios,,, debo crear una interfaz para recoger los datos de entrada. ya logre hacer el formulario, pero que propiedad uso para vaciar el contenido de los cuadros de texto en variables para despues grabarlas en archivos? thanks Responder
9042008
Juan Pablo Angamarca (16:02:19) : @ricardo, debes usar las propiedades getText() y setText(String t) de objetos ya sean JTextField o JTextArea:
/* texto: variable String para recoger el texto. jtaTexto es un JTextArea.*/ String texto = this.jtaTexto.getText(); RandomAccessFile archivo; // Flujo aleatorio. try { // Crear/acceder al archivo "archivo.dat" en modo read/write. archivo = new RandomAccessFile("archivo.dat", "rw"); archivo.writeUTF(texto); // Escribir el texto en el archivo. this.jtaTexto.setText(""); // Limpiar el cuadro de texto. archivo.close(); //Cerrar el archivo. } catch (IOException ex) { // Capturar posibles excepciones ex.printStackTrace(); JOptionPane.showMessageDialog(this, "Error al escribir en el archivo", "Error", JOptionPane.ERROR_MESSAGE); }
Responder
23022010
Jose (12:53:21) : Saludos.. Estoy desarrollando un programa el cual debe imprimir un formato de hoja con multiples campos, los cuales deben ser llenados con datos que se ingresen en el programa o se seleccionen de una base de datos. Que me aconsejas? Responder
17042008
Juan (07:00:39) :
Muy interesante el desarrollo de la clase. Continua en particular modelando tipos de formulario. Hay algn codigo sobre historia clinica digital modelada en java con formularios apropiados? Gracias Responder
26052008
xchande (08:13:34) : Muy buen aporte Juan Pablo, me parece una solucin prctica tienes el merito Saludos. Nota: Piensa en JAVA Responder
27052008
xchande (15:13:55) : Estoy muy entusiasmado con java, yo particularmente me desenvuelvo es en PHP, y otros lenguajes que ayudan en el desarrollo web como javascript pero tengo cerca de dos meses metiendome con java y de verdad que me gusta ese lenguaje. Creo que Java tiene mucha potencia ademas de ser robusto.. Bueno mi genta hablamos luego.. saludos Responder
28052008
Juan Pablo Angamarca (18:33:42) : @xchande, me alegro que te intereses en Java. Java no es solamente un lenguaje de programacin sino una plataforma rica de desarrollo sobre todo tipo de arquitectura y entorno. Y algo muy bueno, desde hace algn tiempo ya es una tecnologa Open Source. Mucha suerte en el viaje que ests empezando, estar presto a ayudarte si as lo necesitas. Responder
26042010
David (11:40:35) :
Muy Bueno!!! Yo tambien estoy interesado en aprender el lenguaje, si no es molestia me decis como hago para conectarme a una base de datos Ej: Sql server 05, asi uso el formulario que hiciste y lo voy cargando en la base de datos. Saludos. Responder
25072008
xchande (23:58:54) : Hola de nuevo, hace unos meses coment que estaba comenzando con Java, y bueno, el aprendizaje ha sido gradual, y un poco obstaculizado pero a pesar de eso, sigo con paciencia aprendiendo Java, hoy por cierto estoy practicando lo de los formularios y ademas estoy un poquito metido con el Java ME.. En fin, sigan con Java que desde aqui yo seguire dandole.. Saludos a todos.. Un saludo Juan, y te tomare la palabra con eso de ayudarme en las dudas. Responder
20082008
Frank David (12:34:09) : Buenas quisiera de su colaboracin para conectar mi aplicacin que se encuentra en PC con un servidor de la red. Actualmente tengo que configurar windows conectando la unidad de red. Ejemplo Y:\\srvft20\kdm. Lo que quiero evitar es que el cliente no haga esos pasos para poder leer los archivos. Muchas Gracias de ante mano por su apreciada colaboracin. Saludos xito Responder
4112008
nayi (09:27:26) : cual es el codigo en java para crear un formulario cualquiera . Estoy trabajando en el eclipse, perspectiva seam Responder
13042009
einner (14:01:00) : ccomo puedo crear un formulario de esos pero en jcreator le? Responder
15042009
Juan Pablo Angamarca (15:38:08) : @elnner Debe ser de alguna forma parecida, la verdad no he trabajado con JCreator. Responder
8062009
fausto08 (17:20:49) : juan pablo, como harias para mostrar el contenido de ese formulario impreso en un jdialog o joptionpane en el netbeans y para que te quede guardado en el disco duro como txt. Gracias Responder
27072009
Luis (10:38:30) : Necesito de alguien q me pueda ayudar, yo tambien estoy empezando en java y mi pregunta es la siguiente: Sera q en netbeans se puede programar un jsrcollbar en jframe sin necesidad de un jscrollpane y si se puede, me pueden dar un ejemplo de como se hace??? Es q lo necesito para una exposicion de la u, agradeceria mucho mi ayuda, si quieren pueden mandarme la respuesta a cresta666@hotmail.com. Responder
21092009
Levi Hurtado (15:43:57) : Hola amigos..!!bueno mi duda es la siguiente: tengo un programa hecho en java y quisiera saber como hago para que el programa se ejecute nada mas con hacer doble clic, ya que el programa es para un usuario no programador, se los agradeceria..!!..exitos..!!..espero su respuestales dejo mi correo por si acaso: levia_22@hotmail.com Dios Les Bendiga..!! Responder
13112009
lina (08:49:03) : holade casualidad alguno sabe como es el codigo o como es para crear formularios en jcreatoro java .. se los agradeceria Responder