Curso de Java #05 - Introdução ao Swing e JavaFX

1.05M views7347 WordsCopy TextShare
Curso em Vídeo
Aula completa disponível em http://www.cursoemvideo.com/lesson/swing-javafx/ Por ser uma linguagem ...
Video Transcript:
Olá seja bem-vindo à quinta aula do seu curso de Java o meu nome é Gustavo eu sou o seu professor e como eu prometi na aula passada a gente fez o primeiro programa utilizando a interface padrão do Java e agora nós vamos fazer o seguinte nós vamos aprender a usar o Swing e o javafx e se você chegou nesse vídeo porque você digitou swing javafx no YouTube saiba que você tem um curso completo de Java se você já sabe a base de Java e que é só ver como é que funciona por exemplo javafx né assiste essa aula agora se você é um cara que começou a estudar Java você não sabe nem para que que serve o Java você não sabe sabe o que que é jre é jdk é jit se você não sabe isso volta a gente tem uma playlist completa aqui ó clica aqui você vai ser desviado diretamente pra Playlist onde você vai ver todas as aulas de Java né e e aqui você vai ter uma evolução Essa é a quinta aula de um curso que é gratuito seja bem-vindo e tem certificado no final isso é bem legal todos os nossos alunos cadastrados tem direito a certificado no final do curso maiores informações assista o curso que você vai ver melhor mas na aula passada a gente fez um programa para escrever olá mundo na tela e escreveu de uma maneira bem ridícula né bem simples e no final da aula eu mostrei para você outras maneiras de se mostrar na tela coisas né inclusive utilizando interface gráfica e inclusive celulares só que agora eu vou mostrar para você como é que mostra coisas na tela como é que você bota componentes visuais na tela utilizando bibliotecas apis e até mesmo plataformas como por exemplo Java FF que é a novidade das últimas versões do Java Então vamos entender como é que isso tudo funciona passo a passo Naquele esquema que você já tá acostumado na aula passada você deve se lembrar bem que a gente tinha feito esse programa um programa que tinha uma classe básica tinha um método principal e um System out print que é um comando padrão para escrever na tela que vai mostrar a mensagem olá mundo até aí tudo bem e se você viu a aula passada você não vai se preocupar tanto com esses comandos que somente o comando System out Você vai precisar digitar e mesmo assim você escreve o Salt que a gente já já aprendeu né Bota o Salt aperta o tab que ele já escreve o comando para você mas o que importa que o seguinte Ah o Java ele funciona como eu falei e múltiplas plataformas ele tem que ser uma linguagem extremamente leve para poder funcionar com uma performance maior porque ele funciona sobre uma máquina virtual E aí eu vou trazer aqui para você uma ideia do seguinte o Java ele funciona por pacotes basicamente eu gosto de brincar o seguinte Java é como se fosse um carro popular Calma eu explico pra maioria das pessoas quando eu falo carro popular uma ideia vem na cabeça básico Quando você compra um carro popular normalmente ele não vem com ar condicionado travas elétricas vidro elétrico nem rodas de liga leve a gente aqui no Brasil tá acostumado com isso né você compra um carro que ele tem roda normal você tem volante um lugar para sentar um Step para trocar e acabou é um carro básico né farol e tudo mais as coisas básicas o carro vem o Java é assim também o básico ele já vem no Java qualquer coisa que você precisa mais você tem que adicionar pacotes então por exemplo se eu quiser no meu carro popular adicionar um ar condicionado eu posso fazer o seguinte Import ar condicionado a instrução Import ela é utilizada no Java para importar pacotes novos por isso que eu tô fazendo essa brincadeira com você então o seu carro você comprou sem ar condicionado você pode dar um Import no kit no pacote de ar condicionado de maneira similar você pode também dar importe trava elétrica ou importe vidro elétrico ou Import rodas de magnésio Deu para entender esse conceito então tudo que você precisar de extra você tem que importar lembre-se disso ainda no exemplo do carro popular Considerando o farol você vai precisar dar importe farol todo carro por mais popular que seja ele não tem farol agora não tô falando de farol de milha não tem farol de milha então você poderia dar um importe no farol Normal todo carro popular tem que ter né porque é uma regra todo carro tem que ter farol sendo assim não é necessário dar Import nele beleza deu para entender minha ideia maluca Então eu penso o seguinte o Java é como se fosse um carro popular ele não vem com a maioria dos pacotes que você precisa mas quando você for precisar dele você vai dar um Import nesse pacote fou Ficou claro Deu para entender então vamos lá vamos ver na prática agora isso funcionando por padrão a linguagem Java ela já vem com um pacote chamado Java leng esse pacote vem com as instruções básicas de funcionamento do Java as instruções ditas essenciais e quando eu digo essencial eu digo essencial mesmo coisas do tipo realizar operações aritméticas fazer testes condicionais escrever na tela então coisas bem simples ela já vem incluído no Java algumas dessas instruções que eu falei vem dentro do jav leng mas na grande maioria dos casos Você vai precisar de coisas adicionais E aí a gente já viu aqui você vai precisar de pacotes vamos ver alguns exemplos de pacotes que existem aí sendo assim se o jav leng já vem carregado em todo o sistema padrão do Java você não vai precisar utilizar o Import outros exemplos de pacotes que você pode ter no Java são os seguintes Java applet para criar aplicativos Java útil que são utilitários por exemplo para monitoramento de entrada como teclado jav math para funções Matemáticas tem javanet para redes javax sound esse ex é de extended São bibliotecas extendidas para som para mídia temos também o javax swing que nós vamos utilizar logo em seguida temos também o Java effect e a extensão fxml inicialmente você não precisa ficar preocupado em decorar essas bibliotecas aos poucos você vai se acostumando com elas e a própria ideia o próprio netbeans vai te ajudar com isso você vai ver como é que funciona Fique calmo pequeno no gafanhoto Então vamos dar um passo mais paraa frente e aprender como funciona a biblioteca swing a biblioteca swing atualmente tá na versão 2. 0 mas ela nem é a mais recente Ela já tem algum tempo funcionando basicamente a biblioteca swing ela permite que você cria interfaces gráficas para janelas para ambientes de janela Então você vai poder utilizar no Windows no Linux no macos no Solares qualquer sistema que tem ambiente gráfico ela vai funcionar Então vamos entender aqui a evolução dessa bibli a biblioteca swing ela vem de uma biblioteca mais antiga que é a awt que é a abstract Window to kit a awt foi uma das primeiras bibliotecas gráficas para poder criar isso que eu falei aplicativos para ambientes operacionais que tenham janelas o problema da awt é que ela utilizava ela deixava por conta do próprio sistema operacional de mostrar um componente por exemplo um botão um botão no Mac é diferente de um botão no Windows visualmente ele é diferente então a awt ela deixava livre para que o sistema operacional decidisse a aparência dos componentes Isso é uma das características da awt isso deixava com que o sistema ficasse meio bagunçado se você criasse um programa no Windows ele ia funcionar de uma maneira quando você colocasse ele no Linux a tela ia ficar ligeiramente diferente porque os componentes eram diferentes então awt uma das características que desmerece né uma das características eh negativas hoje em dia consideradas da WT é essa coisa dos componentes visuais ficarem a cargo do sistema operacional a biblioteca awt até hoje existe e você pode importar o pacote utilizando Import java. awt uma tela em awt teria mais ou menos no Windows essa aparência mas caso fosse exibido em outro sistema operacional poderia modificar completamente para resolver esse problema do awt e evoluir a linguagem surgiu a biblioteca Swing e swing vem de balanço não disz que você tá pensando safado para importar a biblioteca swing nós vamos utilizar o Import javax que é o extended p swing uma tela utilizando bibl swing é muito mais bonita e possui outros componentes visuais bem mais legais Então é isso o pacote swing ele permite que você crie interfaces gráficas Vamos aprender como faz pra gente criar o nosso primeiro exemplo Vamos abrir aqui o net beins e depois do ambiente carregado nós vamos fazer o seguinte vamos criar um novo projeto igualzinho a gente fez na aula passada clicando sobre esse botão Amarelo aqui nós vamos escolher Java aplicação Java próximo Vamos dar um nome eu vou chamar de olá mundo swing vou desmarcar criar classe principal desmarcar essa opção é muito importante quando a gente tá criando interface swing senão você vai ter mais trabalho para carregar a janela se você não criar a classe principal mais pra frente o próprio netbit vai te perguntar qual é a classe principal calma aí que você vai entender Já já vamos clicar em finalizar Não esqueça de desmarcar criar classe principal finalizar ele vai criar o pacote das minhas classes que eu já criou o meu projeto posso abrir aqui ó vamos ver os pacotes Eu tenho um pacote Def vazio o próximo passo é criar nossa primeira classe para isso nós vamos criar novo arquivo clicando sobre esse papelzinho Branco vamos escolher no lugar de Java classe Java que foi da aula passada nós vamos escolher swing dentro da Opção swing nós vamos escolher jframe que é uma janela clicar em próximo ele vai perguntar o nome da classe e o nome do pacote Vamos colocar lá minha classe olá mundo Java lembrando eu vou utilizar o cam Case que são as letras maiúsculas no início das palavras e como é uma classe eu começo com letras maiúsculas pro nome do pacote vou colocar tudo em minúsculo vou chamar de curso em vídeo ponto Ola Mundo lembrando na aula passada se você não lembra assiste ela de novo pra gente ver as regras de nomeação classes sempre com a primeira letra maiúscula todas as outras minúsculas usando cam cas nome de pacote tudo em letras minúsculas a gente pode utilizar o ponto underline e tudo mais lembra na aula passada clicar em finalizar ele vai criar Ó o meu pacote a minha classe já com uma janela viu como é que é simples a interface do netbeans ela pode mudar um pouquinho de computador para computador mas existe um jeito de deixar ela sempre da mesma forma Vamos aprender se por acaso você perder qualquer uma das janelas você pode clicar no menu de cima do Net bings em janela e redefinir janelas então ficou perdido fez alguma besteira fechou uma janela não se preocupa janela de redefinir janelas você vai utilizar isso bastante então basicamente do lado esquerdo nós temos uma janela aqui com os pacotes e as classes embaixo eu tenho o Navigator que vai me mostrar quais são os componentes dentro do jframe quando a gente for criar aqui na direita eu tenho a paleta de componentes e também a janela de propriedades aqui embaixo eu tenho a saída e no meio Eu tenho o projeto da classe se você perceber Nós temos dois botões aqui que a gente vai usar bastante também código fonte para mexer no código e projeto para mexer na janela Então vamos pras paletas vamos escolher o seguinte ó eu vou criar um Label e vou criar um botão posso diminuir a janela aqui ó posso configurar tudo selecionar os dois arrastar uma vez que eles estejam posicionados eu posso configurar certas coisas como por exemplo vou clicar aqui no Lab uma vez cliques apenas uma vez vou na janela de propriedades e vou modificar por exemplo o text para aqui vai aparecer a mensagem tá lá posso também aumentar a letra configurando o fonte Ó tem aqui fonte clico em Red discência escolho por exemplo tamanho 24 também posso fazer a mesma coisa com o botão botão posso vir no texto aqui clique em mim posso também mudar o tamanho da fonte des de 24 vou botar 18 para não chamar tanta atenção se quiser chamar atenção mesmo você ainda pode vir aqui ó e colocar a mensagem com o foreground clico aqui escolho uma cor vermelha pronto simples né Aí você vai falar poxa mas eu não deveria programar não deveria escrever comandos deveria mas a ide te ajuda como eu falei para você a ide ela facilita a sua vida e tem gente que vai te criticar por isso Ah mas você tá desenhando Relaxa gafanhoto você está aprendendo você está aprendendo a utilizar uma nova tecnologia por enquanto a gente não programou nada mas a gente vai precisar programar antes de mais nada a gente tem que dar nome aos componentes todo componente deve ter um nome por padrão ele já coloca esses nomes aqui ó por exemplo o meu Label ele se chama jlabel 1 meu botão chama-se J boton 1 at aumentar um pouquinho esse botão aqui que ficou meio exprimido se eu quiser mudar o nome desses componentes é o seguinte ó eu vou clicar com o botão direito do mouse em cima dele e alterar o nome da variável vamos chamar esse aqui de lbl mensagem e esse aqui eu vou chamar de btn Click Note que a primeira letra em minúscula porque ele é um nome de objeto clicando em OK Agora eu tenho lbl mensagem e btn click vamos testar o nosso programa para ver se ele funciona vamos apertar o play E aí ele vai aparecer uma janela Lembra quando eu pedi PR você desmarcar aquela opção de criar a classe principal quando eu dou Play a primeira vez ele não sabe por qual vai começar e ele vai me perguntar no meu caso eu vou mostrar a janela que a gente acabou de criar que é uma classe Então olha só a minha classe principal vai ser curso em vídeo P olam mundo que é o nome do meu pacote ham mundo Java que é o nome da minha classe lembra ó pacote tudo em minúsculas classe com a primeira letra maiúscula Ok aguardar alguns segundos e ele vai me mostrar a janela na tela Você vai clicar no botão e não vai aparecer a mensagem Óbvio você não mandou mostrar nada você não deu comandos ainda mas agora a gente já tem componentes e os nomes deles vamos programar vou fechar o meu programa sem medo porque eu não vou fechar o netb e agora eu vou fazer o seguinte ó vou clicar com o botão direito no botão e vou programar um evento para ele que é o clique sobre o botão então cliquei com o botão direito sobre o botão eventos Action que é ação Action performance que é ação executada clicando sobre ele nós vamos ser desviados pra área de código viu como é que é simples Você desenha a interface Clica com o botão direito no componente que você quer que o evento seja programado né onde eu vou executar o evento onde que é meu evento evento é no botão eu quero clicar no botão ele vai executar alguma coisa na minha mensagem agora é hora de botar a mão no teclado e digitar um comando bem simples Se você prestar atenção aqui o próprio Java já digitou vários comandos Inclusive tem um comando aqui ó tem generated code aqui que ele tá meio comprimido se você clicar nesse mais aqui você vai ver a quantidade de código que foi criada para desenvolver essa interface coisa que você não precisou digitar nada vou encolher aqui de novo isso não não me importa no momento e eu tenho aqui ó o meu método que é o btn click que é o nome do meu botão Action performed isso é um evento você identifica que ele é um evento também porque ele tá utilizando awt event awt Mas você diz que awt é velho sim até hoje algumas coisas da WT são utilizadas swing ele evoluiu a partir da WT Então dentro dessas Chaves ó abriu chave aqui fechou chave aqui no meio eu vou escrever o nome do meu Label que é lbl mensagem vou digitar um ponto e esperar ele vai aparecer essa lista eu vou botar set text dou enter ele já preenche para mim eu vou set text abre aspas olá mundo então o que eu tô fazendo é o seguinte eu estou configurando o texto set text configure o texto de lbl mensagem lbl mensagem é aquele meu Label ó tá aqui ó lbl mensagem é um jlabel lbl menagem P setex olá mundo e é só isso vamos apertar o Play e ver funcionando apertando o botão de execução ten a janela de novo aqui vai aparecer a mensagem quando eu clicar no botão ele vai disparar o evento e vai escrever olá mundo na tela muito legal né É simples programar com swing é simples presta atenção a gente levou eu tenho mais ou menos uns 20 minutos de aula até aqui e você só teve que escrever uma linha de comando cara quem vai dizer que jav é difícil é porque a base Ela é complicada que o o grande problema é quando você tenta atropelar quando você tenta pular etapas o pular etapas é o seguinte eu não preciso saber a história do Java eu não preciso saber o que que é Java eu não preciso saber o que que é classe eu não preciso saber botar nome eu quero é saber fazer aí vai ser difícil meu querido você vai conseguir fazer um dois trê programas Quando você começar a dificultar as coisas Já era então você precisa dessa caminhada quem reclama que o curso em vídeo é muito devagar não aprendeu direito Java vamos analisar outras coisas aqui além desse dessa linha que eu digitei aqui embaixo você também tem algumas linhas que identificam os controles vamos ver tudo junto num slide que vai ficar mais fácil para você entender basicamente o nosso programa é composto do seguinte eu tenho a minha classe tela Swing e você tem uma palavra nova que não tinha aparecido antes extends nós teremos mais paraa frente uma aula reservada exclusivamente para conceitos de orientação objeto Mas o que eu resolvi foi o seguinte durante o curso em vídeo eu tô falando algumas palavras já anteriormente para quando a gente for estudar orientação objeto você já ter visto tudo de orientação objeto então quando eu comentei anteriormente sobre classe Eu já falei sobre um conceito de orientação objeto agora eu tô usando a palavra extends extends tá relacionado a um outro conceito da orientação ao objeto esse conceito se chama herança Se você olhar o comando é o seguinte a classe pública tela swing ela tem como herança Java x.
s. jframe quando você fala assim meu avô morreu e eu fiquei com a herança basicamente tudo aquilo que seu avô tinha passou para você o que eu tô dizendo aqui é o seguinte tudo que um jframe tiver vai passar para essa minha tela esse é o conceito de herança então eu não preciso ficar criando telas criando os comandos pras telas eu digo que essa minha tela que eu vou dar oa mundo em swing ela vai herdar coisa de jframe então eu posso pegar tudo aquilo que jframe tem e jogo isso pra minha tela de swing então eu não preciso ficar recriando a roda eu erdo essas características ainda dentro da classe eu tenho as especificações de cada controle um por exemplo Private Java x. s.
jbutton é o btn click Isso quer dizer o seguinte btn Click é o nome de um jbutton que é do tipo Swing e nessa mesma linha aparece um novo comando que é o comando Private você tava acostumado a ver Public que é público Private é privado existe um conceito também relacionado à orientação objeto que diferencia Public e Private por exemplo minhas aulas são Public minhas aulas são públicas qualquer um pode ter acesso agora certas coisas minhas por exemplo meu número de telefone é Private eu não deixo ele publicamente para todo mundo deu para entender a coisa isso tem um nome na orientação objeto o nome que se dá a tornar coisas privadas a um objeto é encapsulamento então vai anotando aí gafanhoto mais um conceito a gente viu o conceito de herança e o conceito de encapsulamento Não foi bem o conceito eu citei isso mais paraa frente você vai lembrar disso de forma similar além do botão a gente tem o Private Java x swing J Label lbl mensagem isso é eu tenho lbl mensagem que é um jlabel depois eu tenho o código do método então eu tenho Private void btn Click que é o nome do meu componente né do meu objeto Action performed que é ação realizada ou ação performada e dentro do parênteses eu tenho lá a chamada da WT Então eu tenho a minha classe dentro da minha classe eu tenho comandos dizendo que eu vou ter um botão e um Label e vou ter também um código de um método que vai ser executado quando eu clicar sobre um botão e eu quero que você perceba o seguinte nenhuma dessas linhas que eu coloquei aqui você precisou digitar tudo o netbeans te ajudou então a ideia ela te ajuda para caramba ela facilita a tua vida e esse é o objetivo do programador moderno ser ajudado e criar o código somente daquilo que é necessário Eu recomendo que você Assista esse trecho de novo essa coisa que eu falo de herança de encapsulamento de método isso tudo Você vai precisar desses conceitos Eles são muito importantes pequeno gafanhoto então como eu falei o Action performed é um evento que na verdade é um método em resposta a alguma coisa o comando que eu coloquei dentro foi o comando lbl mensagem pon set text olá mundo como eu já expliquei anteriormente set text é um método do objeto que vai poder modificar o texto que tá dentro dele então set text aí no caso é um método Ficou claro como criar uma interface básica no swing Vamos partir agora para uma biblioteca mais nova na verdade não é bem uma biblioteca ela é um componente adicional de software ela é uma plataforma adicional de software que é o javafx então ah depois como eu falei depois do surgimento do swing foi criada uma plataforma Extra chamada javafx um dos objetivos do javafx é substituir o swing como eu falei o awt evoluiu pro swing e o swing vai ser substituído mais paraa frente pelo javafx então como eu falei o awt tinha a limitação do sistema operacional tomar conta disso a biblioteca swing ela eliminou essa possibilidade e agora vem a plataforma javafx para eliminar uma limitação do swing porque o swing ele só cria interfaces paraas janelas pra Mac para Windows PR Linux e o javafx você vai criar uma aplicação e ela vai funcionar para tudo a versão atual do javafx ela cria aplicativos pra janela já por padrão mas também cria para celulares e para navegadores Isso já é garantido pela versão atual do javafx na próxima versão já está previsto o suporte a videogames blu-rays e sistemas de TV interativo então a proposta de javafx é gigante você vai criar a aplicação uma vez só e ela vai rodar em qualquer um desses aparelhos que eu citei para vocês é uma plataforma ela tem um SDK específico você já tem essa versão Não se preocupa quando você baixou o jdk novo ele já vem com SDK do javafx é muita sigla tá com dúvida assiste as aulas anteriores Não se perca nisso e eu vou aqui demonstrar o mesmo programa o mesmo programa de H mundo utilizando javafx utilizando fxml que é uma versão bem mais simplificada de utilização e onde eu vou utilizar meio que HTML XML e CSS tudo junto então eu vou fechar aqui o meu programa anterior e vou criar um projeto novo então vamos clicar aqui papelzinho Amarelo você percebe aqui que eu já tenho a possibilidade de criar um Java e vou criar ó eu tenho a aplicação javafx mas eu tenho a aplicação fxml do javafx e é essa que eu vou selecionar como eu falei fxml ele vai juntar XML HTML CSS na programação em Java próximo o nome da aplicação vou chamar de Ham mundo Java effect a classe da aplicação ele já sugere um nome se você quiser modificar pode modificar eu não recomendo vamos clicar em finalizar mais uma vez ele vai criar o nosso pacote e ele criou em vez de um arquivo ele já criou um pacote com três arquivos a gente tem que entender esses três arquivos dar uma olhada no código do arquivo hundo javafx PJV você percebe aqui que ele já deu vários imports isso é ele importou bibliotecas externas pacotes externos todos eles javafx ele também utilizou extends para criar uma com application isso é ele erda Tudo que a aplicação tem ele tem alguns comandos aqui extras que a gente não vai se focar no momento outro arquivo que a gente tem que entender é esse arquivo fxml clicando duas vezes sobre ele você vai abrir um programa especial que você já instalou na aula anterior que é o Sand builder mais uma vez eu vou ser chato se você pulou a aula de instalação você pulou a instalação do Sand builder então assim Às vezes a gente tem a tendência falar assim ah precisa assistir isso não é só instalação eu não preciso aprender isso você não vai me ensinar nada nunca fala isso cara é essas coisas elas são passo a passo elas um curso em vídeo né quando você entrar no curso em vídeo assiste a aula desde a primeira cara ele tudo foi pensado para que o seu aprendizado seja divertido e construtivo você vai construindo o seu conhecimento aos poucos não pulle etapas pequeno gafanhoto teimoso o Sand builder ele substitui mais ou menos aquela interface gráfica que a gente viu lá do swing por enquanto ele está externo Mas eu acredito que nas próximas versões ele já incorpora S builder ao próprio netb então aqui ó se você perceber ele tem um botão e selecionou o botão e eu tenho um Label meio Escondidinho aqui ó basicamente o que eu vou fazer é apagar esses dois eu não quero eu quero criar os meus próprios e já crio esse meio olá mundo já próprio eu vou deletar eu vou criar uma aplicação nova Então essa tela aqui que eu chamaria de jframe quando eu utilizo swing ele se chama anchor Pain ou painel de ancoragem esse painel de ancoragem ele vai servir tanto para celulares quanto para navegadores quanto para aplicações para videogames para TVs Então esse ancor Pain aqui eu não posso chamar de janela ele é um painel de ancoragem eu vou vir aqui em controles e nesses controles eu vou ter os dois botão vou arrastar o botão para cá e vou criar também um Label então ele tem um Label aqui de forma similar eu também posso modificar o texto dele aqui na direita botar vai aparecer uma mensagem el aqui no meio vou botar alinhamento Centralizado vou aumentar posso mudar aqui ó Tex Fi vou escolher vermelho o tamanho da letra também posso colocar lá 18 é é bem parecido com swing não é a mesma coisa mas é bem parecido aqui no botão também vou mudar o texto dele vai ser clique em mim fazer igualzinho a outro clique em mim organizar aqui e agora a gente tem que dar um nome para ele né vou dar o mesmo nome selecionar o Label vou vir aqui embaixo ó en code e vou modificar o ID vou chamar de lbl mensagem e esse aqui de btn Click deu enter feito isso eu vou salvar clique em file save ou control s ou comand s se você tiver no Mac salvo o documento vou Minimizar aqui vou voltar pro meu NET Bin agora vou utilizar o arquivo document Controller isso é o controlador do documento se você abrir o fxml Vamos abrir aqui o documento você vai ver que ele tem uma sintaxe semelhante a HTML isso aqui é XML se você abrir o document Controller então vou ter que modificar algumas coisas aqui ó Então eu tenho @ fxml esse primeiro @ fxml é para eu identificar os controles meu controle chama lbl mensagem Eu tenho um botão Button ele apareceu aqui ó uma lampadazinha do lado eu clico nela eu vou adicionar importação pro botão Então antes ó eu tinha somente importação pro Label e agora eu tenho pro Label e pro botão nome do meu botão é btn Click vou ter que modificar aqui também ó vou abrir de novo S builder selecione o botão vemha aqui na área code e vamos colocar no on Action clicou botão sem acento sem nada ó letra minúscula no início botão utilizando o c Case quer dizer que eu tenho um evento no on Action que é o clicou botão salvei de novo vou voltar ao meu netbeans e vou programar esse evento esse evento ele vai ser o seguinte Private void clicou botão é o meu vou apagar esses dois comandos aqui de dentro Então eu tenho aqui o meu evento que é o clicou botão que é um event aqui dentro eu vou colocar o mesmo comando do swing lbl mensagem ponto set text is é configure o texto para olá mundo vamos dar play ele vai abrir a janela apareceu uma mensagem cliquei nele olá mundo ficou claro vamos analisar um pouco o código pra gente aprofundar um pouquinho mais o nosso conhecimentos Então tudo começou com algumas importações Inclusive a javafx fxml nós tivemos a minha classe utilizando o controlador que implementa initializable e você vai falar caramba mas era extends agora é implements implements nos remete a um outro conceito de orientação objeto que a gente vai ver mais paraa frente que são as interfaces sempre que você vira a palavra implements você vai saber que ele está fazendo uma interface logo em seguida a gente tem o fxml e nós temos os dois comandos para adição de controles um pro botão e outro pro Label logo depois eu uso de novo o @ fxml para criar o código do meu evento o código do evento é semelhante ao código do evento do swing só modificando um pouco a sintaxe e eu coloquei exatamente o mesmo comando lá dentro e para você que tá utilizando javafx pela primeira vez e achou difícil Olha só eu vou mostrar os dois códigos em swing em javafx na tela para você vê como eles são muito semelhantes então eu vou dividir a tela no meio aqui na parte de cima eu vou botar o código em swing na parte de baixo o código em javafx percebe algumas áreas que são semelhantes o cabeçalho sendo que swing utiliza a herança de jframe e o Java effect usa a importação da biblioteca fxml logo em seguida eu tenho a Declaração dos controles um pro botão e outro pro Label e eu tenho a mesma coisa no javafx Por fim eu tenho o método do botão em Java Effects eu também tenho o método do clique no botão pause o vídeo nesse momento e analise as semelhanças e diferenças entre os dois métodos de desenvolvimento e saiba que o método de baixo ele é mais moderno ainda não é totalmente compatível e não tem integração completa com netbeans isso é verdade mas é o método que vai prevalecer daqui a alguns anos pause o vídeo e analise o código u bastante coisa nessa aula né Mas ainda tem uma coisa que eu quero mostrar para vocês como você vai gerenciar os seus projetos onde você vai encontrar todos esses arquivos e como é que eu Gero um arquivo executável de cada um desses meus programas que eu criei na aula de hoje voltando aqui a meu netbeans você percebe que eu tenho dois programas que a gente criou hoje o há mundo Swing e o há mundo javafx onde eu encontro esses arquivos você vai abrir o seu gerenciador de arquivos no caso aqui o Finder e você no caso do Windows se você deixou o diretório padrão vai abrir a pasta dos meus documentos no meu caso aqui eu vou abrir minha pasta de usuário para você que tá utilizando o Mac você vai utilizar sua pasta de usuário e vai procurar a pasta netbeans projects no caso do Windows Você pode abrir em meus documentos netbeans projects você percebe aqui ó que tem as duas pastas com todos os arquivos que foram criados caso você queira passar esse código pro seu amiguinho seu colega você pode pegar essas duas pastas e dar para ele se você baixa o pacote no site do curso em vídeo com todos os exemplos você vai baixar um pacote Esse pacote vai te dar as pastas só você pegar essas pastas e jogar dentro da pasta netb projects você vai abrir netb projects e jogar os arquivos dentro dessa pasta vamos analisar por exemplo a pasta ham mundo swing eu tenho o build que são as minhas classes eu tenho NB Project que é o netbeans Project Eu tenho algumas informações aqui eu tenho meus arquivos na pasta src é código fonte source aqui eu tenho o meu pacote e dentro do pacote eu tenho os arquivos meu formulário e o meu Java O problema é que quando eu dou esse arquivo para alguém ele não vai conseguir executar se não tiver o netbeans não é assim que funciona o ideal seria que eu Gere um executável eu faço sempre executável assim se você assistiu aula anterior é o seguinte eu tenho que gerar o bite code disso para que ele possa distribuir o bite code bite code é protegido e e as pessoas vão poder executar mesmo que não tenham o net beins instalado precisa do jre se você estudou anteriormente você sabe que você vai ter que instalar o jre na máquina para ele ter a jvm PR ele ter a Java virtual Machine E aí você vai conseguir executar seus bte codes para gerar bite code no netbeans é muito simples antes vamos entender o seguinte dentro da pasta L mund swing eu tenho build netb Project e source são três pastas percebe que ele vai virar quatro pastas então eu tô aqui com o meu ham mundo swing aberto basta clicar deixar ele selecionado e no lugar do Play eu vou clicar nesse martelinho com a vassoura que é o limpar e construir projeto cliquei quando ele mostrar construído com sucesso vamos voltar lá pra nossa pasta Note que ele tinha build netb Project e source e agora eu tenho dist de Distribuição e aqui eu tenho um arquivo pon jar que é o arquivo que eu vou distribuir pega esse arquivo dá pro seu amigo clicando duas vezes ele abre o seu aplicativo facinho né E esse jarro você pode colocar ele no Linux no Mac no Windows em qualquer um deles e ele vai executar se você tiver a jre compatível no meu caso aqui eu tô utilizando Java 8 Então eu tenho que ter o jre 1. 8 para poder executar esse meu aplicativo vamos fazer o mesmo processo do nosso aplicativo pro javafx vamos dar uma analisada aqui na pasta do javafx eu tenho uma duas três quatro pastas eu tenho a pasta dist já aqui vamos fazer o seguinte ol lá mundo javafx clicou de novo no martelinho e na vassourinha quando ele mostrar concluído com sucesso vou vir aqui na pasta dist e eu tenho um jar Eu tenho um HTML PR compatibilidade com o navegador eu tenho jar cliquei duas vezes no jar ele vai abrir o aplicativo também funcionando sem problema nenhum e agora você pode distribuir se você quiser distribuir o código pros seus amigos opri essa pasta toda se você quiser só mostrar o resultado para ele pega a pasta dist joga esse arquivo jar para ele basta ele ter o jre e ele vai executar Sem problema nenhum no sistema operacional Agora sim agora sim essa aula terminou mas eu tenho um conselho muito importante para te dar antes de terminar se você é um pequeno gafanhoto observador já percebeu que a partir daqui você vai precisar de um conceito muito importante que o chat do Guanabara sempre cita Você vai precisar a partir de agora ter um curso de algoritmos e se você fez um curso anteriormente com a gente você devia estar estranhando caramba G bara chato pra caramba não falou ainda de algoritmo eu deixei você chegar até essa quinta aula para você perceber que você vai precisar de uma ajuda Extra então o seguinte se você quer a partir de agora continuar esse curso a partir da aula 6 7 e tudo mais você precisa fazer um curso de algoritmos e você vai falar poxa agora vou gastar dinheiro não vai não vai porque nós temos esse curso gratuitamente para você no curso em vídeo então se você acessar qualquer um dos endereços abaixo ó cursoemvideo. com ou youtube.
com bar cursos envío qualquer um deles você vai ver lá na sessão de playlist você vai ver lá na sessão de cursos você vai ter o curso de algoritmo faça esse curso a continuidade desse curso de Java Ela depende dessa aula de algoritmo Eu espero que você entenda isso claramente porque não adianta você conseguir a partir daqui a partir desse ponto você não vai conseguir fazer mais nada se você não tiver conhecimento prévio de algoritmo e eu não tô dizendo se você se você já teve aula de algoritmo Mas você sente dificuldades faz o nosso curso esse curso Ele foi preparado para mostrar as pessoas que elas podem aprender a programar então Eh você precisa nesse momento chegamos a um momento crucial você não consegue mais dar passos pra frente em Java se você não tiver uma base por trás de algoritmos Você precisa fazer aula de algoritmo então assim se você tá assistindo a aula no lançamento Provavelmente você tem uma semana entre o lançamento da quinta aula e o lançamento da sexta aula então você tem essa semana para você dar uma relembrada dar uma estudada em algoritmo se o curso já tá aí na playlist E você tem a aula seis embaixo não faça a aula seis antes de dar uma relembrada nos conceitos de algoritmo senão você vai achar Java difícil o grande problema do Java as pessoas falam assim ah Java é difícil mas eu não sei nada de algoritmo se você não sabe nada de algoritmo você vai ser difícil qualquer linguagem que você vai aprender Então você precisa dessa base é muito importante que o Guanabara chato encha o saco a partir de agora todas as aulas de Java eu vou falar gente vocês precisam ter aula de algoritmo vai lá faz aula de algoritmo aula de algoritmo aula de algoritmo por algoritmo é extremamente importante então é isso essa aula foi um pouquinho mais extensa mas a gente viu o desenvolvimento em duas plataformas a gente viu utilizando a biblioteca Swing e a plataforma javafx como você faz um hol mundo e a gente se livrou da maldição mas junto disso a gente viu vários conceitos como herança conceitos como encapsulamento interfaces classes métodos eventos isso tudo Eu só citei não expliquei muito aprofundado mas mais paraa frente você vai ver nas aulas de orientação objeto o que cada um desses conceitos quer dizer classe polimorfismo né tudo aquilo que você viu na faculdade enrolado para caramba Você vai ver no curso em vídeo aqui e vai ficar ó facinho de entender Pode acreditar em mim então é isso mais uma vez eu gostaria de pedir aqui ó clica aqui para assinar o canal Você vai clicar aqui vai ser desviado para uma playlist onde tem todas as aulas que foram lançadas até agora ou se você chegou um pouco mais tarde o curso completo tá aqui ó tá aqui ou então aqui no meio cursoemvideo.
Copyright © 2024. Made with ♥ in London by YTScribe.com