© Casa do Código - s3.amazonaws.com · senvolvimento de jogos Mobile, em Android, ainda pretendo...
Transcript of © Casa do Código - s3.amazonaws.com · senvolvimento de jogos Mobile, em Android, ainda pretendo...
© Casa do CódigoTodos os direitos reservados e protegidos pela Lei nº9.610, de 10/02/1998.Nenhuma parte deste livro poderá ser reproduzida, nem transmitida, sem auto-rização prévia por escrito da editora, sejam quais forem os meios: fotográficos,eletrônicos, mecânicos, gravação ou quaisquer outros.
Casa do CódigoLivros para o programadorRua Vergueiro, 3185 - 8º andar04101-300 – Vila Mariana – São Paulo – SP – Brasil
Casa do Código
Agradecimentos
Deus colocou em minha vida pessoas fantásticas, que me ajudam, aconselham e lu-tam comigo pelas minhas conquistas e também durante minhas derrotas. Primei-ramente, meu agradecimento ao Nosso Criador, Deus, sem Ele nossa vida não temsentido, não tem luta, não tem felicidade. Ele é e sempre será o motivo para se-guir em frente, no caminho que Ele prepara para mim a cada instante. Agradeçotambém à minha família, que são meus cúmplices em todos os momentos, de mãosdadas, me ajudando a trilhar o caminho. Minha mãe, meu pai e meu irmão, comensinamentos de como enfrentar a vida de cabeça erguida, lutando pelos nossos ob-jetivos, e mostrando que a dedicação é ponto de prioridade para nossas conquistas.Minha sogra, me ajudando a crescer pessoalmente, e mostrando a batalha de perse-verar e não desistir daqueles que amamos, minha segunda mãe. E minha namorada,a mulher da minha vida, que enfrenta as barreiras e obstáculos com muito vigor efelicidade. Chorando, sorrindo, esbravejando, aconselhando, sendo feliz... Agradeçoa cada conversa, a cada momento de companheirismo, compreensão e muito amorque passamos juntos. Agradeço a Deus por me dar de presente você. Eu te amo LaisRenata! Agradeço aos amigos que me incentivaram a continuar lutando pelos meussonhos, de forma especial cito alguns nomes como Bruno Souza, Rogério Rymsza eWilliam Siqueira, e carinhosamente cito Paulo Silveira e Adriano Almeida, da Casado Código, com sua paciência, e me fazendo acreditar emmimmesmo, com granderesponsabilidade, e que poderia concluir este livro. E por �m, agradeço a você leitor,pelo carinho e vontade de fazer deste livro, seu guia de JavaFX. Espero que seja umaleitura agradável e divertida!
i
Casa do Código
Sobre o autor
Conheci o Java há � anos, em meu curso técnico em informática com foco em pro-gramação, desde então desenvolvo so�wares com esta linguagem, e pretendo sem-pre crescer com ela. Hoje, sou estudante de Análise e Desenvolvimento de Siste-mas, e também sou estagiário desenvolvedor Java/Android. Além disso, sou entu-siasta JavaFX e, sempre que posso, desenvolvo so�wares com esta plataforma, paraestar sempre aprendendo novas “artimanhas”. Tenho um carinho especial por de-senvolvimento de jogos Mobile, em Android, ainda pretendo trabalhar com isto.Recentemente, fui autor de um artigo da revista MundoJ, sobre JavaFX, na ediçãode Março/Abril (edição ��).
iii
Casa do Código Sumário
Sumário
� Apresentação ��.� Um pouco da história do JavaFX . . . . . . . . . . . . . . . . . . . . . . ��.� Por que estudar JavaFX? . . . . . . . . . . . . . . . . . . . . . . . . . . ��.� O que veremos no livro? . . . . . . . . . . . . . . . . . . . . . . . . . . ��.� Organização do livro . . . . . . . . . . . . . . . . . . . . . . . . . . . . �
� Começando com JavaFX ��.� Criando um novo projeto com JavaFX . . . . . . . . . . . . . . . . . . ��.� Desenvolvendo o formulário de login . . . . . . . . . . . . . . . . . . . ��.� Dando o primeiro toque de requinte . . . . . . . . . . . . . . . . . . . ��
� GolFX - Nossa loja de artigos esportivos ���.� Entendendo o problema . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� Por onde começar? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� Utilizando boas práticas de programação . . . . . . . . . . . . . . . . . ���.� Vitrine de produtos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ��
� Mais telas da nossa aplicação ���.� Exibição de item escolhido . . . . . . . . . . . . . . . . . . . . . . . . . ���.� Carrinho de compras . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� Excluindo produtos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ��
� Primeiro toque de requinte - CSS ���.� A importância do CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� Criação de arquivo CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� Alterando cursores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� Efeito Hover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ��
v
Sumário Casa do Código
� Segundo toque de requinte - E�ects ���.� Uma breve introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� Sombreamento externo . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� Sombreamento interno . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� Re�exão d’água . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ��
� Terceiro toque de requinte - Transitions e Timelines ���.� O que são Transitions e Timelines? . . . . . . . . . . . . . . . . . . . . ���.� Fade Transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� Scale Transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� Parallel e Sequential Transitions . . . . . . . . . . . . . . . . . . . . . . ���.� Timeline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ��
� JavaFX vs Swing ���.� Entendendo javax.swing . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� JavaFX dentro do Swing? . . . . . . . . . . . . . . . . . . . . . . . . . . ��
� Mais componentes JavaFX ���.� Accordion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� HBox e VBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� GridPane para linhas e colunas . . . . . . . . . . . . . . . . . . . . . . ���.� UmHTMLEditor pronto para você usar . . . . . . . . . . . . . . . . . ���.� HyperLinks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.� A famosa e temida barra de progresso . . . . . . . . . . . . . . . . . . ���.� Visualizando árvores com TreeView . . . . . . . . . . . . . . . . . . . . ���.� WebView para renderizar HTML . . . . . . . . . . . . . . . . . . . . . ���.� Popup Controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.�� Grá�cos para dar mais vida . . . . . . . . . . . . . . . . . . . . . . . . . ���.�� Audio e Video . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���.�� Shapes para o controle �no . . . . . . . . . . . . . . . . . . . . . . . . . ��
�� JavaFX Scene Builder ����.� Conhecendo a ferramenta . . . . . . . . . . . . . . . . . . . . . . . . . ����.� Library Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ����.� Hierarchy Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ��
vi
Casa do Código Sumário
��.� Content Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ����.� Inspector Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ����.� Inserindo CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . �����.� Classe Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . �����.� Classe Initializable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ���
Bibliogra�a ���Versão: ��.�.�
vii