CAAD

Comunidad de Aventuras Conversacionales y Relatos Interactivos
Fecha actual 20 Jul 2018 06:12

Todos los horarios son UTC + 1 hora




Nuevo tema Responder al tema  [ 14 mensajes ] 
Autor Mensaje
NotaPublicado: 01 Feb 2011 11:29 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
Ayer, alguien me comentó que al redimensionar la ventana de juego, la proporción texto-gráfico no se mantiene.

mobile("guerrero").getIO().addFrame ( ImageConstants.RIGHT, 0 );
mobile("guerrero").getIO().addFrame ( ImageConstants.RIGHT , 450 );
mobile("guerrero").getIO().addFrame ( ImageConstants.TOP , 0 );
mobile("guerrero").getIO().addFrame ( ImageConstants.BOTTOM , 0);

Esa es mi configuración del frame.
Imagino que el problema es ese "450", que se mantiene incluso cuando el gráfico ha escalado y le quedan márgenes por ambos lados. He mirado en la documentación pero no me ha parecido ver nada que lo solucione.
¿Habría algún modo de usar proporciones en vez de medidas fijas?

_________________
Si la mentira tuviera color, todos seríamos daltónicos...


Arriba
 Perfil  
 
NotaPublicado: 01 Feb 2011 11:31 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
Imagino que ahí se podría poner una función matemática que calculara según el tamaño de la ventana, la anchura del frame. ¿No?

_________________
Si la mentira tuviera color, todos seríamos daltónicos...


Arriba
 Perfil  
 
NotaPublicado: 01 Feb 2011 11:47 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5300
Ubicación: Coruña
Sí, supongo que se podría añadir esa funcionalidad, pero de momento no la hay. Puedo intentar añadirla para el futuro, pero volvemos al monotema de estos días: dada mi falta de pericia para estas cosas, no sé si sabré, o cuánto tardaré en averiguar cómo hacerlo.

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
NotaPublicado: 01 Feb 2011 11:56 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1863
jenesis escribió:
Imagino que ahí se podría poner una función matemática que calculara según el tamaño de la ventana, la anchura del frame. ¿No?

Me temo que no es tan sencillo como eso. El parámtro size es de tipo int, un número. Por lo tanto no puedes indicar una foŕmula que se recalcule en el momento de redimensionar la ventana de juego.

Lo que sí he notado es que el frame de texto es el que se redimensiona. Intenta a hacer lo contrario... dale el ancho al area del texto, y el de la imagen se adaptará, supongo.

dddddd.-
(que no es ese alguien)


Arriba
 Perfil  
 
NotaPublicado: 01 Feb 2011 12:41 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
dddddd escribió:
Lo que sí he notado es que el frame de texto es el que se redimensiona. Intenta a hacer lo contrario... dale el ancho al area del texto, y el de la imagen se adaptará, supongo.


No tengo control sobre la zona en la que aparece el texto, o eso creo... :roll:

_________________
Si la mentira tuviera color, todos seríamos daltónicos...


Arriba
 Perfil  
 
NotaPublicado: 01 Feb 2011 12:52 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1863
jenesis escribió:
dddddd escribió:
Lo que sí he notado es que el frame de texto es el que se redimensiona. Intenta a hacer lo contrario... dale el ancho al area del texto, y el de la imagen se adaptará, supongo.

No tengo control sobre la zona en la que aparece el texto, o eso creo... :roll:


Eso me estaba temiendo... En un rato miro a ver que se puede hacer.


Arriba
 Perfil  
 
NotaPublicado: 01 Feb 2011 13:34 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5300
Ubicación: Coruña
La función matemática que calcularía un tamaño en función del tamaño de la ventana es fácil, eso es lo de menos... lo que pasa es que no he programado una manera de que el tamaño se cambie dinámicamente según vas cambiando de tamaño a la ventana, y no sé cómo se hacen esas cosas. De verdad, todo esto me está agobiando, ¿no puedes sacar la aventura sin estos temas? Estos días estoy teniendo jornadas de trabajo de 12-14 horas, ayer estuve hasta las 2 en el tajo para levantarme hoy a las 7 y va a ser así o parecido por una buena temporada, y no son los mejores días para que me ponga a mirar documentación sobre interfaces de usuario, sinceramente...

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
NotaPublicado: 01 Feb 2011 14:05 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
Al-Khwarizmi escribió:
La función matemática que calcularía un tamaño en función del tamaño de la ventana es fácil, eso es lo de menos... lo que pasa es que no he programado una manera de que el tamaño se cambie dinámicamente según vas cambiando de tamaño a la ventana, y no sé cómo se hacen esas cosas. De verdad, todo esto me está agobiando, ¿no puedes sacar la aventura sin estos temas? Estos días estoy teniendo jornadas de trabajo de 12-14 horas, ayer estuve hasta las 2 en el tajo para levantarme hoy a las 7 y va a ser así o parecido por una buena temporada, y no son los mejores días para que me ponga a mirar documentación sobre interfaces de usuario, sinceramente...


Tranquilo Al-K, no tienes por qué agobiarte. Si no tienes una solución rápida al problema no pasa nada. Además en ningún lugar he dicho que de ello dependa la publicación de mi aventura.

La aventura está ahora en fase preview y la tienen varias personas, es lógico que ahora surjan los comentarios sobre su visualización, ya que está corriendo sobre varias máquinas distintas. Ellos me comentan y yo intento ver si se puede hacer algo al respecto, nada más.

Para publicarla, solo me queda que uno de ellos termine de darle un repaso total a los textos, en cuanto eso esté listo se publicará, independientemente de que estos detalles estén o no pulidos.

Y aunque veas aquí mensajes míos, si tienes tanto curro y nada de tiempo, no te sientas en la obligación de contestarlos ¿vale?
Puedes empezar por éste de ahora. ;)

Saludos

_________________
Si la mentira tuviera color, todos seríamos daltónicos...


Arriba
 Perfil  
 
NotaPublicado: 01 Feb 2011 16:06 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5300
Ubicación: Coruña
Sí, realmente es bueno que más gente esté probando el AGE y que por lo tanto salgan más sugerencias a la luz. El tema es que me será difícil atenderlas rápido, y en particular, imposible para que tu aventura pueda salir con esas mejoras en un plazo mínimamente decente. Pero quedarán apuntadas para cuando pueda.

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
NotaPublicado: 01 Feb 2011 21:55 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1863
Por lo que veo, una de las formas de conseguir algo similar a porcentajes (weight/peso) es con el Gridbag que comentaba Al-Khwarizmi en otro hilo, pero sin tener el entorno de compilación y teniendo algo más productivo e importante que hacer (betatesting de obras) voy a dejarlo de momento.


Arriba
 Perfil  
 
NotaPublicado: 02 Feb 2011 06:39 
Desconectado
Semimomio
Semimomio
Avatar de Usuario

Registrado: 24 Ago 2007 00:41
Mensajes: 2023
Ubicación: Chile
Al-Khwarizmi escribió:
Sí, supongo que se podría añadir esa funcionalidad, pero de momento no la hay. Puedo intentar añadirla para el futuro, pero volvemos al monotema de estos días: dada mi falta de pericia para estas cosas, no sé si sabré, o cuánto tardaré en averiguar cómo hacerlo.


Para mi proyecto de fin de semestre pasado, yo escribí unas cuantas clases y rutinas que tiene la particularidad de escalar gráficos (usé un poco de código "googleado").

Si te interesa, puedo pasártelas. Concretamente, tengo un par de codigos escritos integramente por mí para escalar una imagen a un tamaño arbitrario. Por otro lado, tengo un par de clases para incluir imágenes en un jpanel de forma que se escalen y sirvan como imagen de fondo. Apuesto que pueden servirte con algunos retoques.

Ya me avisarás. :wink:

_________________
Eliuk Blau
eliukblau (AT) gmail.com
http://www.caad.es/eliukblau/


Arriba
 Perfil  
 
NotaPublicado: 02 Feb 2011 08:56 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5300
Ubicación: Coruña
Gracias, pero el problema no es tanto escalar gráficos en sí (eso sé hacerlo, de hecho ya los escalo actualmente para meterlos en el frame con el tamaño fijo que dice el usuario) como hacer el layout que tenga dos filas o columnas; pero donde sus tamaños sean relativos y cambien dinámicamente.

Si uso BorderLayout (que es lo que uso ahora) puedo cambiar el tamaño de una de las columnas (pongamos que son columnas) y la otra cambia dinámicamente. Si uso GridLayout, los tamaños son relativos pero no los controlo yo. Pero ninguno de los dos me permite que los tamaños sean proporcionales y dinámicos, o sea, pongamos, imagen 30% y texto 70%, por ejemplo. Supongo que tendría que usar un GridBagLayout o uno de ésos más complicados que no sé usar. ¿Tu código también hace algo de eso? En ese caso, sí que me interesaría.

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
NotaPublicado: 02 Feb 2011 20:12 
Desconectado
Semimomio
Semimomio
Avatar de Usuario

Registrado: 24 Ago 2007 00:41
Mensajes: 2023
Ubicación: Chile
Al-Khwarizmi escribió:
Si uso BorderLayout (que es lo que uso ahora) puedo cambiar el tamaño de una de las columnas (pongamos que son columnas) y la otra cambia dinámicamente. Si uso GridLayout, los tamaños son relativos pero no los controlo yo. Pero ninguno de los dos me permite que los tamaños sean proporcionales y dinámicos, o sea, pongamos, imagen 30% y texto 70%, por ejemplo. Supongo que tendría que usar un GridBagLayout o uno de ésos más complicados que no sé usar. ¿Tu código también hace algo de eso? En ese caso, sí que me interesaría.


¿Y no has pensado crear tu propio Layout? No debería ser muy difícil para un programador Java experimentado como tú. Lo heredas de AbstractLayout y le programas esa funcionalidad proporcional que quieres.

No, mi código no hace eso que dices. Sin embargo, para unos paneles del mismo proyecto usé un tipo de layout que no recuerdo el nombre, lo buscaré. La idea era que la división entre 2 paneles fuera redimensionable y que además, la división estuviera controlada al principio por un factor proporcional. El layout existe y permite hacer eso. Por cosas raras del código no conseguí hacerlo funcionar de manera proporcional, y tuve que hacer un cálculo de píxeles relativo al tamaño de la ventana, pero según el API con que tú le pongas un double a la propiedad específica ya te acepta un tamaño proporcional. Seguramente algún otro código mío estaba haciendo conflictos y no logré pillarlo.

Buscaré y te cuento cómo se llama el que ocupé.

Saludos!

_________________
Eliuk Blau
eliukblau (AT) gmail.com
http://www.caad.es/eliukblau/


Arriba
 Perfil  
 
NotaPublicado: 02 Feb 2011 20:17 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5300
Ubicación: Coruña
Eliuk Blau escribió:
¿Y no has pensado crear tu propio Layout? No debería ser muy difícil para un programador Java experimentado como tú. Lo heredas de AbstractLayout y le programas esa funcionalidad proporcional que quieres.

Soy un programador Java experimentado, pero no soy un programador de interfaces gráficas de usuario experimentado. Y si uno quiere hacer cosas así, tener mucha práctica con el lenguaje en cosas que no sean interfaces gráficas no vale para gran cosa. Si ya me tengo que pelear para usar los layouts más simples y no conozco los más complejos, a buenas horas voy a crear uno... :)

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 14 mensajes ] 

Todos los horarios son UTC + 1 hora


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado


No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro

Buscar:
Saltar a:  
cron
Desarrollado por phpBB® Forum Software © phpBB Group
Traducción al español por Huan Manwë para phpBB-Es.COM