¿Han detectado problemas de JavaFX bajo windows vista?

Pongo aquí este tema ya que todavia no han creado una sección para JavaFX.

Como dice el titulo estoy desarrollando alguna aplicacion en windows vista y he detectado un par problemas que me estan volviendo loco.

Para empezar, como lo dice este post en los foros de sun, cada que ejecuto algo con javafx me lanza una ventanita diciendo que debo aceptar la licencia. Segun el post solo debe aparecer una vez y listo, pero no a mi me sale una y otra vez, y aunque al parecer reportaron el bug no encuentro por ningun lado la solución. Bueno como quiera es un problema mínimo y no me afecta mucho.

La segunda cosa que acabo de encontrar y ya llevo muchas horas con el problema y simplemento no encuentro algo relacionado con una posible solucion es la siguiente:

Tengo en un archivo principal una clase main, que contiene las variables de stage y scene y un archivo secundario con otra clase al que le paso como parametro la scene y esta agrega un nodo de tipo Button. Quiero darle estilo a este nodo con css pero aquí viene el detalle:

(el css lo cargo en el scene, que es como recomiendan y lo hacen todos los tutoriales que encontre)

* Si agrego el Button al momento de instanciar el scene se muestra estilizado
* Si no cargo nada al instanciar el scene pero le inserto el Button en la clase secundaria no sale estilizado
* Si agrego un Button al instancair el scene y lo agrego en la clase secundaria salen ambos estilizados, pero con el detalle que uno no me toma el background-color, pero todas las demas propiedades si.
* Si agrego el Button al scene dentro del mismo archivo principal pero fuera de la instanciacion del Scene y en la clase secundaria no aparecen estilizados
* Si agrego el Button al scene en el mismo archivo principal pero fuera de la instanciacion del Scene y no lo agrego en la clase secundaria tampoco sale estilizado
* Si agrego un Button en la instanciacion del Scene, dentro del mismo archivo y en la clase secundaria se muestran estilizados pero uno no me toma el background-color.

Quiero pensar que windows vista tiene algo que ver y sii es así para instalar windows xp o de plano linux, pero la verdad no estoy seguro. Ya busque y busque en los foros de sun y en el internet y nomas no encuentro nada al respecto. Tengo fe en que sea el vista por que en varios applets de ejemplo que eh abierto o cargan demasiado lento o no cargan bien donde al parecer el autor nunca tuvo problemas.

Les dejo un pequeño trayout que hize, si fueran tan amables de probarlo y jugar con varias combinaciones como hize yo para ver que todo salga correctamente se los agradeceria muchísimo, y si es problema de windows vista pues a reportar el bug a sun.

Clase principal
 

Clase secundaria
 

Archivo de estilos
 

De antemano agradesco su ayuda y tiempo brindado.

Saludos

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de rodrigo salado anaya

@Nopalin, cool :)

Que bueno que te interese JFX.

Bueno lo común seria agregar todos tus botones, pero con los   el código se vuelve muy limpio y útil cuando haces programas grandes.
El atributo   es específicos de tu  , así que debes de refrescar todo tu   al agregar elementos como lo haces, el por que solo sucede con css, no sabría decirte con certera, pero si te puedo asegurar que no sucede con elementos puros de JavaFX.
Lo de Vista, puede ser por que no tienes definido tu class path del jdk que te sugieren en el mensaje que te aparece.
Yo no ocuparía   para agregar otro elemento, usaría un modificador apropiado para acceder a el y modificarlo;

Modifica solo tu Main.fx para que jale :)
 
Me dices si tienes tiempo como te fue ok. Te cuidas y nos leemos pronto.

Imagen de Nopalin

Problema resuelto

Como bien comentas, todo el cuete está en que se debe refrescar el css, por que? quien sabe pero así debe ser.

Lo lógico sería pensar que al asignar un css en el scene, todos los nodos asignados a el, inclusive despues de su instanciacion deberian renderizarse con propiedades de los css que esten definidos en el, y al parecer así funciona, solo que me da la impresion de que el scene cachea los atributos css utilizados por los nodos existentes y si despues se agrega un nodo que utiliza alguno de ellos lo asigna, si asignas un css y los nodos actuales ninguno utiliza laspropiedades del archivo css, no cachea nada, por lo cual al insertar un nodo despues, no existen propiedades css cacheadas y por lo tanto no las aplica.

Hmm creo que no es bug como lo llegué a pensar ayer en mi desesperación jeje, pero el comportamiento no es natural creo yo. Como sea ya resolví el problema:

* Puedo agregar nodos invisibles solo en la instanciacion de la scene solo para que cachee las propiedades css
* ó puedo insertar otro archivo css con informacion específica de los nodos justo despues de haber insertado los nodos. Por ejemplo mi clase Help quedaria así:
 

Saludos y espero no haber confundio a alguien más jeje.

Gracias por tu ayuda rodrigo

Imagen de rodrigo salado anaya

@Nopalin, ok..

Ok, mira Nopalin, sí, como nos dimos cuenta se trata de refrescar la propiedad stylesheets del Scene, solo ten cuidado con:

 

Por que si haces eso entonces agregas otra ruta a scene.stylesheets,y no te va a afectar en este ejemplo, pero si lo haces en un programa de producción es un grave error, checa este main.fx va:

 

Si ves en consola, se agregaran mas rutas de tu scene.stylesheets, y no se espera que pase eso.

Imagen de Nopalin

muy de acuerdo

Simon estoy muy de acuerdo con tigo mi estimado rodrigo.
Pero no te apures si habia pensado eso, la clase help por asi decirlo solo la llamaria una sola vez en toda la ejecucion del programa, pero te preguntaras por que hago eso no? bueno pues cuando salio netbeans 6.9 lo probe, muy bonito su editor javafx, pero lo que no te dice es que todo lo que edites de la forma lo configura en un solo archivo y adivina que? el archivo se hace tan pero tan grande que la jvm falla y no compila por que dice que el archivo es demasiado grande, un error bobo no crees? lo bueno que ya esta detectado y los de netbeans van a poder manejar foras de diseños con varios archivos para la siguiente versión según lei.

De cualquier manera no me gustó netbeans por su increible gasto de ram, regresé a eclipse y a veces a jedit y trabajo sin broncas.

sobres nos vemos

Imagen de rodrigo salado anaya

@Nopalin, Bug Arreglado Issue: RT-7788

El problema que te resultaba en tu código ya no lo es en la versión 1.3.1, ya repararon el Bug.
Lo comprobé con el código que pusiste aquí:).

Imagen de Nopalin

Excelente

Que bueno que lo hayan corregido, ahora el pex esta en que ya no uso css jeje.

sobres