Swing Com a IDE
-
Upload
robson-willian -
Category
Documents
-
view
216 -
download
0
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