Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: Mitsu en 28 Octubre 2013, 03:19 AM

Título: [Source] [JavaFX] [MySQL] - FXAgenda
Publicado por: Mitsu en 28 Octubre 2013, 03:19 AM
Buenas noches con todos.

Estoy practicando con JavaFX, la verdad me parece un excelente framework para RAD (desarrollo rapido de aplicaciones). Es un framework muy completo y por supuesto, multiplataforma.

JavaFX es la nueva apuesta de Oracle (Aunque el proyecto fue inicialmente de Sun), para el desarrollo de GUI, y la verdad fue un buen movimiento. JavaFX ha venido para reemplazar a Swing a mediano - largo plazo como lo dice Oracle, y creo que no tardará mucho. Gran cantidad de programadores están migrando a JavaFX, por su flexibilidad e increible potencia. JavaFX puede ser usado en Desktop, web y Móvil.


FX AGENDA:


FXAgenda es una agenda virtual. Puede guardar los contactos que se desee. Los contactos serán guardados en una base de datos.

Características:


Título: Re: [Source][JavaFX][MySql] FXAgenda
Publicado por: makinavaja3500 en 10 Noviembre 2013, 02:56 AM
Felicidades, tiene muy buena pinta.

Tienes documentación de JavaFx en español? Estoy buscando para empezar con JavaFx pero no encuentro nada.

Saludos
Título: Re: [Source][JavaFX][MySql] FXAgenda
Publicado por: egyware en 10 Noviembre 2013, 03:48 AM
El Look and Feel es hermoso. Talvez tenga que considerarlo en un próximo proyecto que use GUI en Java.
Título: Re: [Source][JavaFX][MySql] FXAgenda
Publicado por: Mitsu en 10 Noviembre 2013, 15:42 PM
Muchas gracias a ambos por comentar.

@makinavaja3500 En realidad, Aprendi JavaFX en diversas fuentes como:

1) Oracle docs
2) Blogs de JavaFX: www.java-buddy.blogspot.com, www.edu.makery.ch, y otros.
3) StackOverFlow. Este foro me ha ayudado muchísimo cuando no sabía cómo ni para qué hacer algo.

Material en español no vas a encontrar mucho, casi no hay. Si quieres, agrégame al skype (Manda MP) y te pasaré material (Inglés).

@egyware Gracias machine. FX tiene un L&F muy bueno, me gusta mucho. Pero lo que es mejor, es que puedes aplicar estilos (css) a tus GUI's, haciendo que luzcan como tú desees. En este caso escogí un tono Negro y un blanco ahumado.

Está de más decir que Swing, en unos años morirá. FX ha venido a reemplazarlo, por lo que se podría decir que FX será el UI Toolkit predeterminado de Java en unos años. Fuera de esto, te recomiendo usar FX, da muchísima más libertad al programador al momento de hacer las GUI.


Saludos.
Título: Re: [Source][JavaFX][MySql] FXAgenda
Publicado por: egyware en 11 Noviembre 2013, 03:42 AM
Cita de: M1t$u en 10 Noviembre 2013, 15:42 PM

@egyware Gracias machine. FX tiene un L&F muy bueno, me gusta mucho. Pero lo que es mejor, es que puedes aplicar estilos (css) a tus GUI's, haciendo que luzcan como tú desees. En este caso escogí un tono Negro y un blanco ahumado.

Está de más decir que Swing, en unos años morirá. FX ha venido a reemplazarlo, por lo que se podría decir que FX será el UI Toolkit predeterminado de Java en unos años. Fuera de esto, te recomiendo usar FX, da muchísima más libertad al programador al momento de hacer las GUI.

Fascinante, no sabia que utilizaba CSS. Lo cual me simplificará la vida a la hora de crear los elementos.

Empezaré mi estudio de JavaFX y empezaré por aqui http://docs.oracle.com/javafx/index.html lo escribo por si alguien se topa con este post y también quiere aprender JavaFX.

Saludos!
Título: Re: [Source] [JavaFX] [MySQL] - FXAgenda
Publicado por: Mitsu en 11 Noviembre 2013, 04:22 AM
Que te vaya bien en tu aprendizaje máquina. Suerte!

Saludos.
Título: Re: [Source] [JavaFX] [MySQL] - FXAgenda
Publicado por: pwnz en 16 Noviembre 2013, 03:08 AM
Había oído hablar de javafx pero después de ver la pedazo de GUI sin duda voy a ir mirándolo pero ya! cambia mucho respecto a swing la forma de programar una GUI?
Título: Re: [Source] [JavaFX] [MySQL] - FXAgenda
Publicado por: Mitsu en 16 Noviembre 2013, 16:07 PM
Hola, gracias por comentar.

Respecto a si cambia mucho con respecto a Swing es sí. La arquitectura es diferente, es más organizada, más flexible. Por ejemplo, con FX los EventHandler son muy flexibles, le puedes dar un determinado tipo de listener a tus controles que con Swing no sería posible. Puedes usar CSS para darle el estilo deseado a tus controles.

Otro punto es que, la forma en como se trabaja no es muy diferente a Swing. En Swing se hereda de JFrame para hacer una ventana, y con FX se hereda de Application. La lógica en realidad, no es muy diferente. La transición de Swing a FX no es muy dura.

Puedes crear una GUI con FX de 2 formas:

1) Manualmente (Por código Java)
2) Por medio de Scene Builder.

La ventana de hacerlo por Scene Builder es que tu puedes diseñar tu GUI simplemente arrastrando controles (como Visual Studio), pero la ventaja es que no te genera código Java, si no código FXML.

FXML es un lenguaje de etiquetado con el que podemos crear nuestras GUI's, no se mezcla en nada con código Java. De esta manera, se separa una clase Controladora y la vista (FXML).

Cuando creamos una GUI con SceneBuilder tenemos que especificar cuál es la clase Controladora que manejará la GUI.

Primero, tienes que crear un proyecto JavaFX FXML Aplication o si quieres usar un paquete dentro de un proyecto ya existente, simplemente dale clic derecho -> Other -> JavaFX - Empty FXML.

Te creará un archivo FXML. Ábrelo así:

(http://thumbs.subefotos.com/348819482206aae36d39516a2ddac814o.jpg)

Luego ya puedes empezar a crear la GUI. En el apartado izquierdo, tendrás los Paneles y Controles. Para colocarlo en tu GUI simplemente arrástralos. En el apartado derecho verás una columna con 3 secciones:

Título: Re: [Source] [JavaFX] [MySQL] - FXAgenda
Publicado por: mierdal en 18 Abril 2014, 00:50 AM
Cita de: Mitsu en 16 Noviembre 2013, 16:07 PM


La ventaja de hacerlo por Scene Builder es que tu puedes diseñar tu GUI simplemente arrastrando controles (como Visual Studio), pero la ventaja es que no te genera código Java, si no código FXML.

FXML es un lenguaje de etiquetado con el que podemos crear nuestras GUI's, no se mezcla en nada con código Java. De esta manera, se separa una clase Controladora y la vista (FXML).

Cuando creamos una GUI con SceneBuilder tenemos que especificar cuál es la clase Controladora que manejará la GUI.

Primero, tienes que crear un proyecto JavaFX FXML Aplication o si quieres usar un paquete dentro de un proyecto ya existente, simplemente dale clic derecho -> Other -> JavaFX - Empty FXML.


Esto no es del todo cierto ya que para controlar directamente los controladores que te ha creado el FXML es muy cansado ya que si tienes que pasar informacion entre formas o incluso redefinir acciones en tiempo de ejecucion es muy dificil ya que todas las propiedades se encuentran en el FXML, ademas haciendolo del modo "Manual" estaras obligado a tener una variable a la cual seguirle la pista para cada componente, cosa que en FXML puedes tener un boton sin tener la variable correspondiente en el controlador, mas bien la tienes en en el FXML y para hacer uso de ella tienes que agregar la etiqueta @FXML para indicar el contexto y tiene que ser una variable global, dejando los componentes simples que solo se usan una vez sin variable o con una variable Global lo que supone perdida de memoria.....

Un Ejemplo sencillo

Modo: manual
public void crearVentana(){
  Label etiqueta=new Label("Enviar Formulario");
  -------------------------------
  Código
  -------------------------------
  Button enviar=new Button();
  enviar.setOnAction(); << esta asignacion termina muriendo con la funcion


}

Modo: FXML

@FXML
private Button enviar;

public void crearVentana(){
  Label etiqueta=new Label("Enviar Formulario");
  -------------------------------
  Código
  -------------------------------
  enviar=new Button();
  enviar.setOnAction(); << la asignacion NO termina muriendo con la funcion ni la variable


}


pero bueno digamos que hacerlo con FXML hace que para las personas que inician separen un poco mejor el MVC y tambien para hacer aplicaciones poco complejas
Título: Re: [Source][JavaFX][MySql] FXAgenda
Publicado por: kernelgis en 10 Junio 2014, 20:45 PM
Hola Mitsu!, esta muy interesante todo esto!.
Estoy realizando una aplicación con javaFx con el SceneBuilder para construir los FXML.
Mi Pregunta es "Cómo puedo mostrar la aplicación que estoy realizando para que se ejecute en un WebSite con un servidor de aplicaciones?.
Tendrás algún link o documentación ?

De antemano te agradezco la atención.

Saludos.
Kernelgis.

Cita de: Mitsu en 10 Noviembre 2013, 15:42 PM
Muchas gracias a ambos por comentar.

@makinavaja3500 En realidad, Aprendi JavaFX en diversas fuentes como:

1) Oracle docs
2) Blogs de JavaFX: www.java-buddy.blogspot.com, www.edu.makery.ch, y otros.
3) StackOverFlow. Este foro me ha ayudado muchísimo cuando no sabía cómo ni para qué hacer algo.

Material en español no vas a encontrar mucho, casi no hay. Si quieres, agrégame al skype (Manda MP) y te pasaré material (Inglés).

@egyware Gracias machine. FX tiene un L&F muy bueno, me gusta mucho. Pero lo que es mejor, es que puedes aplicar estilos (css) a tus GUI's, haciendo que luzcan como tú desees. En este caso escogí un tono Negro y un blanco ahumado.

Está de más decir que Swing, en unos años morirá. FX ha venido a reemplazarlo, por lo que se podría decir que FX será el UI Toolkit predeterminado de Java en unos años. Fuera de esto, te recomiendo usar FX, da muchísima más libertad al programador al momento de hacer las GUI.


Saludos.
Título: Re: [Source] [JavaFX] [MySQL] - FXAgenda
Publicado por: marcelop69 en 18 Agosto 2014, 22:43 PM
Hola amigo !!

Estoy empezando con JAVAFX y tu aplicacion FXAgenda me esta sirviendo mucho para  comprender la arquitectura y la forma de uttilizar el entorno, pero me encuentro ante un problema que no le he encontrado solucion, cuando utilizas esta linea
import javafx.scene.control.Dialogs;, exactamente donde se encuentran las clases Dialogs ?
Título: Re: [Source] [JavaFX] [MySQL] - FXAgenda
Publicado por: darkc0d3x en 23 Agosto 2014, 05:46 AM
Cita de: marcelop69 en 18 Agosto 2014, 22:43 PM
Hola amigo !!

Estoy empezando con JAVAFX y tu aplicacion FXAgenda me esta sirviendo mucho para  comprender la arquitectura y la forma de uttilizar el entorno, pero me encuentro ante un problema que no le he encontrado solucion, cuando utilizas esta linea
import javafx.scene.control.Dialogs;, exactamente donde se encuentran las clases Dialogs ?

Aqui puedes encontrar la libreria javafx.scene.control.Dialogs

https://github.com/marcojakob/javafx-ui-sandbox/tree/master/javafx-dialogs/dist

Saludos!
Título: Re: [Source] [JavaFX] [MySQL] - FXAgenda
Publicado por: marcelop69 en 29 Agosto 2014, 04:59 AM
Muchas Gracias  !!! ya los he descargado y empezare con los test correspondientes.-
Título: Re: [Source] [JavaFX] [MySQL] - FXAgenda
Publicado por: yisus211 en 12 Septiembre 2014, 23:19 PM
excelente aporte,soy nuevo en esto y gracias a esta ayuda tan grande de tu parte estoy comprendiendo paso a paso lo que se logra con javafx, muchas gracias de verdad, tuve un poco de problemas al ejecutarlo con netbeans pero ya lo tengo funcionando ....gracias nuevamente amigo
Título: Re: [Source] [JavaFX] [MySQL] - FXAgenda
Publicado por: Aprendiz92 en 17 Enero 2018, 16:20 PM
Ayuda!
Hola, soy nuevo en el foro.
Me interesa el tema pero tengo una duda, me he descargado el proyecto y a la hora de abrirlo con Netbeans no me lo reonoce como proyecto.
Me interesa mucho el tema de la session de usuario.