Swing Com a IDE

download Swing Com a IDE

of 22

Transcript of Swing Com a IDE

  • 8/16/2019 Swing Com a IDE

    1/22

    Aprendendo Swing com a IDE NetBeansPosted julho 19, 29

    !iled under" #a$a %

    &la a todos' Sou o (ecno)#a$a e trago paraa $oc*s este tutorial retirado do site da sun em

    ingl*s e tradu+ido para o portugu*s por mim'

    aso deseje copiar este tutorial para outro local, por -a$or, colo.ue como guia de re-erencia

    ao tradutor meu /log"

    www'tecnoja$a'wordpress'com

    Espero .ue aprendam muito com este tutorial' Ele ser0 de grande ajuda para os iniciantes'

    Aprendendo Swing com a IDE NetBeans

    Esta lio -ornece uma introduo para Inter-ace de 3su0rio 4r0-ica 5 43I 6 programando com

    Swing e a IDE NetBeans' omo $oc* aprender na lio 78ello orld:, o Net/eans ; gr0tis,open)source, am/iente de desen$ol$imento integrado 5IDE6 multi)plata-orma com construo

    suportado para programao na linguagem #a$a' Isto o-erece muitas $antagens so/re o c$el' Se $oc* ainda no

    leu a lio acima, tome um momento para l*)la agora' Ele -ornece $aliosas in-orma?es so/re

    download e instalao do #D@ e NetBeans'

    A meta desta lio ; introdu+ir a API Swing projetando uma aplicao simples .ue con$erte

    tempetura de elsius para !ahrenheit' Nossa 43I ser0 /0sica, en-ocando apenas um

    su/conjunto de omponentes Swing dispon>$el' Nos usaremos o construtor de 43I da IDE

    NetBeans, a .ual -a+ a criao de inter-ace de usu0rio um assunto simples de arrastar esoltar' Sua caracter>stica de gerao de c$el mais /ai=o .ue j0 pro$em em outros tutoriais' 8Cperlins em cada discusso le$ara

    $oc* para li?es relacionadas, onde $oc* poder0 aprender cada detalha de n>$el mais /ai=o'

    A 43I terminada para esta aplicao ser0 $ista como segue"

    https://tecnojava.wordpress.com/category/java/http://www.tecnojava.wordpress.com/http://www.tecnojava.wordpress.com/https://tecnojava.wordpress.com/category/java/

  • 8/16/2019 Swing Com a IDE

    2/22

    Para /ai=ar cli.ue a.ui

    Da perspecti$a de um usu0rio -inal, o uso ; simples" entra com uma temperatura 5em elsius6

    na /ai=a de te=to, cli.ue no /oto on$ert, e assistira a temperatura con$ertida 5em

    !ahrenheit6 aparecera na tela' &s /ot?es minimi+ar, ma=imi+ar e -echar comportaro como

    esperado, e a aplicao tam/;m ter0 um titulo .ue aparecera junto ao topo da janela'

    Da perspecti$a de um programador, nos escre$eremos a aplicao em dois est0gios principais'

    Primeiro, nos po$oaremos a 43I com $0rios componentes Swing e organi+aremos eles como

    mostrado acima' Ento, nos adicionaremos a aplicao l

  • 8/16/2019 Swing Com a IDE

    3/22

    Passo # – Esta$elecer um nome para o projeto

    Agora entre como nome de projeto 7elsiuson$erterProject:' oce podera dei=ar o Projeto

    Hocal e a Pasta de Projetos com os $alores de-ault ou clicar no /otao para escolher um local

    alternati$e no seu sistema'

  • 8/16/2019 Swing Com a IDE

    4/22

    (enha certe+a de desa/ilitar o chec/o= 7reate Gain lass: dei=ando esta opo

    selecionada ser0 gerada uma no$a classe principal como ponto de entrada da aplicao, mas

    nossa janela 43I principal 5criada no pr

  • 8/16/2019 Swing Com a IDE

    5/22

    Juando a IDE aca/ar de carregar, $oc* $era uma screen similar acima' (odos pain;is esto

    $arias e=ceto para o painel Projects no canto es.uerdo superior, o .ual mostrara o projeto

    criado recentemente'

    Passo % – Adicionando um "&rame

  • 8/16/2019 Swing Com a IDE

    6/22

    Agora cli.ue no nome elsiuson$erterProject e escolha New K #!rame !orm 5#!rame ; a

    classe Swing responsa$el pela moldura principal de nossa aplicao6' oce aprendera como

    designar esta classe como aplicao de ponto de entrada depois nesta lio'

    Passo ' – Nome da Classe !(I

    Pro=imo, digite elsiuson$erter43I como nome da classe, e aprenda como o nome do

    pacote' oce pode renomear este pacote para .ual.uer coisa .ue $oce .ueira, mas a.ui nos

    estamos seguindo a con$ero de renomear o pacote depois da lio a .ual esta pertencendo'

  • 8/16/2019 Swing Com a IDE

    7/22

    & restante dos campos de$er0 ser preenchido automaticamente, como mostra acima' lica no

    /oto !inish .uando $oc* esti$er aca/ado'

  • 8/16/2019 Swing Com a IDE

    8/22

    Juando a IDE aca/ar de carregar, o painel direito mostrada um tempo de projeto, uma $iso

    gr0-ica do elsiuson$erter43I' Isto esta nesta screen .ue $oc* $isuali+ara arrastando,

    soltando e manipulando os $0rios componentes Swing'

    B)sico da IDE NetBeans

    No ; necess0rio aprender cada caracter>sticas da IDE NetBeans antes de e=plorar suas

    capacidades de criao 43I' De -ato, apenas caracter>sticas .ue $oc* realmente necessita

    para entender ; a Palette, o Design Aream o PropertC Editor, e o Inspector' Nos discutiremosestas caracter>sticas a/ai=o"

  • 8/16/2019 Swing Com a IDE

    9/22

    A Paleta

    A Palheta contem todos compoentenes o-erecidos pela API Swing' oc* pode pro$a$elmente

    j0 adi$inhar para .ue so muito desses componentes, ainda .ue seja a primeira $e+ .ue

    esteja usando deles 5#Ha/el ; um eti.ueta de te=to, #Hist ; uma lista arrastar)a/ai=o, etc6

    Desta lista, nossa aplicao usara apenas #Ha/el5uma eti.ueta /0sica de te=to6,

    #(e=t!ield5para o usu0rio entrar com a temperatura6 e #Button5para con$erter a temperatura

    de elsius para !ahrenheit'6

    A *rea de Projeto

    A 0rea de projeto ; onde $oc* constr

  • 8/16/2019 Swing Com a IDE

    10/22

    A -igura acima mostra um simples o/jeto #!rame, como representou pelo retLngulo

    som/reado grande com /orda a+ul' omportamentos comumente esperados 5tal como -echar

    .uando o usu0rio clicar no /oto closeF6 ; auto)gerado pela IDE e aparece na $ista de c

  • 8/16/2019 Swing Com a IDE

    11/22

    8ow to Gae !rames 5Gain indows6 e HaCing &ut omponents ithin a ontainer'

    + Editor de Propriedade

    & Editor de Propriedade -a+ o .ue seu nome implica" ele permite .ue $oc* edite as

    propriedades de cada componente' & Editor de Propriedade ; intuiti$o para usar nele $oc*

    $era uma serie de -ilas K uma -ila por propriedade K .ue $oc* pode clicar e editar sementrar no c

  • 8/16/2019 Swing Com a IDE

    12/22

    & Inspector -ornece uma representao gr0-ica de seus componentes das aplica?es' N

  • 8/16/2019 Swing Com a IDE

    13/22

    oc* pode colocar o titulo por outro jeito, clicando no titulo da propriedade e entrando o

    no$o te=to diretamente, ou por clicando no /oto e entrando com o titulo no campo

    -ornecido' &u, como um atalho $oc* pode simplesmente clicar no #!rame do Inspector e

    entrar com seu no$o te=to diretamente sem usar o PropertC Editor'

    Passo 2 – Adicionando um ,e-t&ield

    Pr

  • 8/16/2019 Swing Com a IDE

    14/22

    Para mais in-orma?es so/re este componente, 8ow to 3se Ha/els'

    Passo % – Adicionar "Button

    Pr

  • 8/16/2019 Swing Com a IDE

    15/22

    oc* pode ser tentando manualmente ajustando a largura do #Button e #(e=t!ield, mas

    apenas dei=ando eles como eles esto no momento' oc* aprendera como ajudar

    corretamente estes componentes depois nesta lio' Para mais in-orma?es so/re este

    componente, $eja 8ow to 3se Buttons'

    Passo ' – Adicionando o segundo ".a$el

    !inalmente, adicione um segundo #Ha/el, repetindo o processo no passo 2' olo.ue estesegundo la/el a direita do #Button, como mostra acima'

    Ajustando a !(I CelsiusConverter

    om os componentes 43I agora no lugar, este ; a hora para -a+er os ajustamentos -inais'

    E=istem alguns modos di-erentes para -a+er isto a ordem sugerida a.ui ; apenas uma

    a/ordagem poss>$el'

    Passo 1 – Esta$elecendo o ,e-to do Componente

    Primeiro, cli.ue duas $e+es em #(e=t!ield e #Button para mudar o te=to padro .ue -oi

    inserido pelo NetBeans' Juando $oc* apagar o te=to do #(e=t!ield, isto encolhera o tamanhocomo mostra a/ai=o' Gude o te=to do #Button de #Button para on$ert' (am/;m mude o

    (e=to do #Ha/el do topo para elsius e o /oto para !ahrenheit'

    http://java.sun.com/docs/books/tutorial/uiswing/components/button.htmlhttp://java.sun.com/docs/books/tutorial/uiswing/components/button.htmlhttp://java.sun.com/docs/books/tutorial/uiswing/components/button.html

  • 8/16/2019 Swing Com a IDE

    16/22

    Passo 2 – Esta$elecendo o ,amano do Componente

    Pr

  • 8/16/2019 Swing Com a IDE

    17/22

    Passo # – /emover espa0o e-tra

    !inalmente, agarre o /orda la em /ai=o do #!rame e ajuste seu tamanho para eliminar

    .ual.uer espao e=tra' Note .ue se $oc* elimitar tudo o espao e=tra, 5como mostrada

    a/ai=o6 o titulo 5o .ual apenas aparece tem de e=ecuo 6 pode no aparecer

    completamente' & usu0rio -inal esta li$re para redimensionar o tamanho da aplicao .uedesejar, mas $oc* pode .uerer dei=ar algum espao e=tra ao lado direito para ter certe+a .ue

    tudo ocorra corretamente' E=perimente, e use o screenshot da 43I terminada como um guia'

    A parte 43I desta aplicao esta agora completaQ Se o NetBeans ti$esse aca/ado o seu

    tra/alho, $oc* sentiria .ue criar esta 43I -oi um simples, se no uma tare-a tri$ial' Gas tome

    um minuto clicando na a/a do c

  • 8/16/2019 Swing Com a IDE

    18/22

    Para $er o c

  • 8/16/2019 Swing Com a IDE

    19/22

    &s nomes padro no so rele$ante no conte=to desta aplicao, assim -a+ sentido mudar eles

    de seus padr?es para algo .ue ; mais signi-icante' li.ue com o direito em cada $ari0$el e

    escolha 7hange $aria/le name:' Juando $oc* esti$er terminado, o nome da $ari0$el de$era

    aparecer como segue"

    &s no$os nomes de $ari0$el so 7temp(e=t!ield:, 7celsiusHa/el:, 7con$ertButton: e

    7-ahrenheitHa/el:' ada mudana .ue $oc* -a+ no Inspector automaticamente propagara seu

    modo dentro do c

  • 8/16/2019 Swing Com a IDE

    20/22

    Na 0rea de projeto, cli.ue no /oto on$ert para selecionar ele' (enha certe+a .ue apenas o

    /oto on$ert esta selecionado 5se o #!rame tam/;m esti$er selecionado, este passo no

    -uncionara6' li.ue com o /otao direito no /oto on$ert e escolha E$ents ) Action )

    ActionPer-ormed' Este gerara o c

  • 8/16/2019 Swing Com a IDE

    21/22

    E=istem muitos tipos di-erentes de e$entos representando os $0rios tipos de a?es .ue o

    usu0rio -inal pode -a+er 5clicando com o mouse ; um e$ento, pressionando uma tecla ; outro,

    mo$endo o mouse ainda ; outro, e assim por diante6 nossa aplicao esta apenas interessada

    com o ActionE$ent para mais in-orma?es so/re e$ent handling, $eja riting E$ent Histeners'Passo # 3 Adicionando o Cdigo de Converso de ,emperatura

    & passo -inal ; simplesmente colocar o c

  • 8/16/2019 Swing Com a IDE

    22/22

    om o c