Bienvenido(a), Visitante. Favor de ingresar o registrarse.
Diciembre 05, 2008, 11:25:25
Inicio Ayuda Buscar Ingresar Registrarse
Noticias: Foro de Java, C++ y más.

Nuevo foro de Control de versiones.

+  Foros Java y C/Linux
|-+  Programación
| |-+  Java J2SE
| | |-+  Tamaño ventanas y componentes
« anterior próximo »
Páginas: [1] Enviar tema Imprimir
Autor Tema: Tamaño ventanas y componentes  (Leído 154 veces)
jannetita
Newbie
*
Mensajes: 9


Ver Perfil


« en: Agosto 27, 2008, 10:28:58 »

Hola, tengo varias ventanas JDialog con componentes como: JPanel, JCheckBox, JTabbedPane, JScrollPane, JTable, JButtons etc.... Necesito saber cómo puedo hacer que el tamaño de las ventanas se ajuste a diferentes resoluciones de pantalla y por consiguiente que sus componentes tambien lo hagan.
Espero haberme explicado....gracias de antemano Sonrisa
En línea
manix
Full Member
***
Mensajes: 236


manix_10@hotmail.com mamfrey@yahoo.com
Ver Perfil WWW Email
« Respuesta #1 en: Agosto 27, 2008, 11:09:31 »

hola jannetita!!

nunca me hecho algo asi, pero creo que lo que buscas es algo asi como lo que hace el GridBagLayout, aca chuidiang tiene unos ejemplos de lo que buscas, puesdes revisarlos.

Aca el concepto, aca el ejemplo

saludos


« Última modificación: Agosto 27, 2008, 11:11:03 por manix » En línea

chuidiang
Administrator
Hero Member
*****
Mensajes: 1985



Ver Perfil WWW Email
« Respuesta #2 en: Agosto 28, 2008, 09:08:11 »

Hola:

Si usas un Layout null (setLayout(null)) y luego pones las posiciones y tamaños de los componentes con setBounds() o similar, eso se queda fijo tal cual lo has puesto y no se ajustará nunca al tamaño de la ventana o a la resolución si este cambia.

En vez de eso, usa un Layout cualquiera de los que hay disponibles en java, el que más se ajuste a tus necesidades de acuerdo a como quieras tener organizados los componentes en la ventana. Los layouts de java tienen en cuenta resolución y tamaño de ventana de para colocar los componentes. El que te comenta manix es uno de los posibles ejemplos.

Aquí tienes una lista de layouts y la utilidad de cada uno. No están todos los disponibles, sólo algunos de los más habituales.

Se buena.
En línea

Niubi
Full Member
***
Mensajes: 154


Ver Perfil
« Respuesta #3 en: Agosto 28, 2008, 07:59:55 »

Hola,

Una pregunta relacionada con este tema...

Yo por ejemplo desarrollo una interfaz de 1024x768, es decir, cojo el máximo de la resolución de la pantalla, pero al ejecutarla no me deja verla entera, es decir, que parte de la ventana está oculta.

¿Sabéis porque sucede esto?

Saludos.
En línea
chuidiang
Administrator
Hero Member
*****
Mensajes: 1985



Ver Perfil WWW Email
« Respuesta #4 en: Agosto 29, 2008, 09:04:23 »

Hola:

Es posible que el tamaño se lo estés poniendo al panel que va dentro de la ventana, por lo que ese tamaño es la parte de dentro de la ventana. La ventana, además, tiene bordes y barra de título que quizás queda fuera de esas dimensiones.

Se bueno.
En línea

Niubi
Full Member
***
Mensajes: 154


Ver Perfil
« Respuesta #5 en: Agosto 29, 2008, 11:07:37 »

Hola,

He estado mirando las propiedades tanto del frame como el del panel,tienen como ancho x alto 1024x768,

Si lo he entendido bien, ¿los valores del panel debería ser mejor que los del frame? y ¿cuanto menos deberían ser?

Saludos.
En línea
jannetita
Newbie
*
Mensajes: 9


Ver Perfil
« Respuesta #6 en: Agosto 29, 2008, 09:23:40 »

Hola a todos, gracias por sus respuestas y disculpen la tardanza en contestar....
Ya había leído sobre los layouts (en la página de chuidiang de hecho) pero no se bien como utilizarlos, dado que estoy trabajando en NetBeans 6.1 y este me codificó esta parte, utilizando un GroupLayout. No se donde o cómo cambiar el tipo de layout que quiero utilizar... alguna pista? :$
Muchisimas gracias por su atención Sonrisa
En línea
manix
Full Member
***
Mensajes: 236


manix_10@hotmail.com mamfrey@yahoo.com
Ver Perfil WWW Email
« Respuesta #7 en: Agosto 29, 2008, 10:15:41 »

si mira

dolo debes de ir a la edicion visual, te pones sobre el contenedor donde quieres cambiarle el layout, y luego le das click derecho -> set layout -> seleccionas tu layout

para cambiar las propiedades del layout, ve a la barra de menus, y buscas el menu de "ventantas" y buscas la ventana de navigator -> inspector. Con la ventana del inspector puedes ver la lista de componentes que ests ultilizando, y buscas el componente donde le asignastes el layout, al lado puedes ver el layout que habias seleccionado y ahi cambias las propiedades

saludos
En línea

jannetita
Newbie
*
Mensajes: 9


Ver Perfil
« Respuesta #8 en: Septiembre 01, 2008, 11:55:55 »

Gracias a manix supe como cambiar mi layout y utilize un GridBagLayout siguiendo el ejemplo de chuidang y todo quedo muy bien Sonreir
Muchas gracias a todos  Giñar
En línea
jannetita
Newbie
*
Mensajes: 9


Ver Perfil
« Respuesta #9 en: Septiembre 02, 2008, 12:01:59 »

Que pena pero tambien tengo otra duda relacionada...
Cómo puedo hacer que el tamaño de una ventana sea proporcional al tamaño de otra?
Es decir, por ejemplo quiero que el tamaño de una ventana hija sea del 80% del tamano de su ventana padre. Se puede?
En línea
manix
Full Member
***
Mensajes: 236


manix_10@hotmail.com mamfrey@yahoo.com
Ver Perfil WWW Email
« Respuesta #10 en: Septiembre 02, 2008, 02:06:08 »

hola

Citar
Si lo he entendido bien, ¿los valores del panel debería ser mejor que los del frame? y ¿cuanto menos deberían ser?
para ello lo primero que debes hacer es obtener el tamaño de la pantalla, mediante la siguiente sentencia:
Código:
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();

Una vez que ya has obtendio las dimensiones, solo te resta modificar el tamaño del frame, para ello:

Código:
frame.setSize(screenSize);

-----------------

hola!

pues la verdad no conozco nada asi, lo desconozco, pero hacerlo "a pie" no es mucho problema, se me ocurre que por ejemplo hagas en la ventana hija algo como esto: setSize((int) getParent().getWidth() *  0.80, (int) getParent().height() * 0.80 );
es un ejemplo verdad

saludos
« Última modificación: Septiembre 02, 2008, 02:19:22 por manix » En línea

Páginas: [1] Enviar tema Imprimir 
« anterior próximo »
Ir a:  


Ingresar con nombre de usuario, contraseña y duración de la sesión

Powered by MySQL Powered by PHP Powered by SMF 1.1.5 | SMF © 2006-2007, Simple Machines LLC XHTML 1.0 válido! CSS válido!