domingo, 17 de maio de 2015

Primeiros Passos JavaFX




Java fx:


Introdução:


Os dois primeiros framework  dentro da tecnologia Java utilizados para criação de telas e interação com o usuario foram awt e o swing a partir da 6 versão surge o JavaFX.

Conceito principal  do Javafx é de interfaces ricas, componentes visuais melhores  em todos os aspectos, e o conjunto de  recursos de interação mais amplo. Outra caracteriza do javaFX é que ele é multiplataforma . É o novo padrão de desenvolvimento java.

A principal diferencial do java fx é o de utilização do openGl, que  utiliza recursos da placa de vídeo da própria maquina.

Para facilitar a migração para o javaFx, projetos criados com o Java swing se integram ao javafx, facilitando a migração para este novo framework .



Criação de telas javafx:

Cada tela dentro do javafx é uma cena uma estrutura de arvore  um componente  externo e dentro outro componentes que montam a estrutura da tela.

As telas podem ser criadas de duas formas diretamente na classe java ou através de um arquivo fxml, que possui uma estrutura de XML. O arquivo de telas fica totalmente separado do código java.




Como vincular o arquivo FXML ao projeto:


Após criado o projeto e o arquivo fxml e necessário vincular o mesmo ao projeto para que carregue a tela com os componentes criados e não apenas um arquivo em branco conforme o padrão de criação. Conforme exemplo abaixo:



Para carregar o arquivo  é necessário uma classe denominada FXMLLoader que possui um método denominado Load, para esse método será passado o nome do arquivo fxml. Através do (getClass().getResource("olaMundo.fxml")); onde o “olaMundo.fxml” é o nome do arquivo fxml.
O método Load retorna um object que devera ser convertido para o tipo do objeto base da tela neste caso um AnchorPane conforme abaixo:

AnchorPane pane = FXMLLoader.load(getClass().getResource("olaMundo.fxml"));




Após isso e necessário a criação da cena para possibilitar abertura dos componentes da tela 


Scene cena= new Scene(pane);



Isso e colocado dentro da estrutura da janela através do:

primaryStage.setScene(cena);



Só falta agora mostrar a janela ao usuário:

primaryStage.show();



Resultado:

 



























Código: