Top Banner
Portal Java Tutorial: Pacote Swing por Daniel Badawi Pacote Swing - O pacote Swing é uma extensão das classes da AWT (Abstract Window Toolkit) utilizada para a criação de aplicações gráficas. - Todos os programas que executaremos necessitarão de 3 linhas de importação de classes: import java.awt.*; Permite a importação de várias classes do pacote awt . import java.awt.eve nt.*; Utilizado para o processamento dos eventos como o click  do mouse em um botão, enter  numa caixa de texto etc. import javax.swing.*; Usado para as diversas classes do pacote swing . Criação de Frames - janelas O programa a seguir apresenta uma janela (frame ). São ressaltados as seguintes propriedades rótulo da barra de título, tamanho do frame, localização e cor do fundo. import java.awt.*; import java.awt.event.*; import javax.swing.*; class Exemplo0901 extends JFrame { Exemplo0901() //construtor - mesmo nome da classe { setTitle("Minha primeira Janela"); //título da janela  setSize(400,50); //dimensões da janela -largura e comp.  //Esquecer de chamar o método setSize() faz com que //somente a barra de título seja apresentada setLocation(150,150); //canto esquerdo e topo da tela  setResizable(false); //não pode ser redimensionada  getContentPane().setBackground(Color.gray); //cor fundo  } public static void main(String args[]) { JFrame Janela = new Exemplo0901(); Janela.show(); //rotina para fechar a janela: WindowListener J = new WindowAdapter() { Portal Java    A maior comunidade de Java do Brasil    www.portaljava.com Todos os direitos reservados. Proibida a utiliza ção ou replicação deste material sem prévio aviso.
16

Swing

Jul 06, 2015

Download

Documents

Eduardo Lira
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 1/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

Pacote Swing

-  O pacote Swing é uma extensão das classes da AWT (Abstract Window Toolkit) utilizada para acriação de aplicações gráficas.

-  Todos os programas que executaremos necessitarão de 3 linhas de importação de classes:

import java.awt.*;Permite a importação de várias classes do pacote awt .

import java.awt .event.*;Utilizado para o processamento dos eventos como o click do mouse em um botão, enter  numa caixa detexto etc.

import j avax.swing.*;

Usado para as diversas classes do pacote swing .

Criação de Frames - janelas

O programa a seguir apresenta uma janela (frame ). São ressaltados as seguintes propriedades rótulo dabarra de título, tamanho do frame, localização e cor do fundo.

import java.awt.*;import java.awt.event.*;import javax.swing.*;

class Exemplo0901 extends JFrame {Exemplo0901() / / construtor - mesmo nome da classe {

setTitle("Minha primeira Janela"); / / título da janela  setSize(400,50); / / dimensões da janela -largura e comp.  

 / / Esquecer de chamar o método setSize() faz com que  / / somente a barra de título seja apresentada setLocation(150,150);  / / canto esquerdo e topo da tela  setResizable(false);  / / não pode ser redimensionada  getContentPane().setBackground(Color.gray); / / cor fundo  

}

public static void main(String args[]){

JFrame Janela = new Exemplo0901();Janela.show();

 / / rotina para fechar a janela: WindowListener J = new WindowAdapter(){

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 2: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 2/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

public void windowClosing(WindowEvent e){

System.exit(0);}

};Janela.addWindowListener(J);

}}obs: Ao finalizar este programa pressionando-se o botão fechar, a execução será desviada para a tela doDOS.

Explicação:

class Exemplo0901 extends Jframe;

 A classe Exemplo0901 herda da classe Jframe do java para utilizar os seus recursos.

Exemplo0901()É o constru or da classe. Nele redefinimos as particularidades da nossa janela como o título, dimensões,localização e a cor de fundo.

 JFrame Janela = new Exemplo0901();Declaração e instanciação do objeto Janela . Observe que ele invoca o construtor Exemplo0901 .

Janela.show();O objeto janela é apresentado com o método show(). WindowListener J = new WindowAdapter()

{ public void w indowClosing(Window Event e){System.exit(0);

}} ;Janela.addWindowListener(J);Estas instruções são necessárias para encerrar a janela da aplicação e do DOS.

Tabela 1 – Constantes de cores padrão para a classe Color 

black (preto) green (verde) red (vermelho)blue (azul) l igthGray (cinza-claro) white (branco)cyan (ciano) magenta (magenta) yellow (amarelo)darkGray (cinza-escuro) orange (laranja)gray (conza) pink (rosa)

Classe JLabel - rótulo e ImageIcon - ícone

JLabel: Esta classe é utilizada para exibir uma linha de texto simples. Podem ser adicionados ícones em seurótulo. Existem várias propriedades de um label como alinhamento, tipo de letra, cor, tamanho etc. Um labelpode apresentar um texto, um ícone, ou ainda os dois ao mesmo tempo.

JLabel <nome do label> = new  JLabel (“texto”, <ícone>, JLabel.alinhamento);

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 3: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 3/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

Tabela de alinham ento: O alinhamento é em relação ao frame (tela) 

constante do Java alinhamento constante numéricaJLabel.CENTER  centralizado zeroJLabel.RIGHT alinhado à direita umJLabel.LEFT alinhado à esquerda dois- Alinhamento padrão: à esquerda Sendo L1 o objeto JLabel, apresentamos as configurações mais comuns:

L1.setForeground(Color.<constante-de-cor>);O método setForeground() define a cor do primeiro-plano, neste caso a cor do fonte.

L1.setBackGround(new Color(220, 220, 220));

Define a cor de fundo da janela. Os números que aparecem dentro dos parênteses especificam o padrãoRGB (Red-Green-Blue) e definem as tonalidades das cores vermelho, verde e azul. Os números para astonalidades podem variar de 0 a 255 e a sua mistura irá formar uma cor específica.

L1.setFont(new Font(fonte, estilo, tamanho));setFont() define o fonte do rótulo.

Fonte  As fontes que um computador possui instalado variam de sistema para sistema. Para estabelecer uma linhade base comum, o modelo AWT define cinco nomes lógicos de fontes: SansSerif, Serif, MonoSpaced,Dialog eDialogInput. Esses nomes de fontes são mapeados para fontes que realmente existem na máquina do

cliente.

Estilo Podem ser:Font.PLAIN regularFont.BOLD negritoFont.ITALIC itálicoFont.BOLD + Font.ITALIC negrito e itálico

Tamanho Define o tamanho do fonte.

Propriedades mais comuns de um Label:

Método Função ExemploJLabel() Construtor L1 = new JLabel("Nome");

L2 = new JLabel("Idade",JLabel.CENTER);getText() Obtém o texto. L1.getText();setText() Especifica o texto. L1.setText("Digite a senha");

Para a inserção de uma imagem utilize a classe ImageIcon:

ImageIcon <nome do ícone> = new  ImageIcon(“path da imagem”);

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 4: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 4/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

 A imagem deve ser adicionada a um objeto JLabel. Quando não definido o alinhamento será centralizado.

O programa seguinte mostra o uso de rótulos (label) destacando a apresentação de texto, ícone além doalinhamento no frame.

rótulo JLabel

import java.awt.*;import java.awt.event.*;import javax.swing.*;

class Exemplo0902 extends JFrame{

JLabel L1, L2, L3, L4;ImageIcon icone=new  ImageIcon("C:/windows/hlpglobe.gif");

Exemplo0902(){

setTitle("Inserindo Labels e Imagens na Janela");setSize(350,120);setLocation(50,50);

getContentPane().setBackground(new Color(220,220,220));L1 = new JLabel(" Aprendendo",JLabel.LEFT);L1.setForeground(Color.red);L2 = new JLabel(icone);L3 = new JLabel("Inserir ",JLabel.RIGHT);L3.setForeground(Color.blue);L4 = new JLabel("Labels/Imagens",icone,JLabel.CENTER);L4.setFont(new Font("Serif",Font.BOLD,20));L4.setForeground(Color.black);

getContentPane().setLayout(new GridLayout(4,1)); / / Divide a Janela em 4 linhas e uma coluna 

getContentPane().add(L1);getContentPane().add(L2);getContentPane().add(L3);getContentPane().add(L4);

}public static void main(String args[]){

JFrame Janela=new  Exemplo0902();Janela.show();

WindowListener x = new WindowAdapter(){

public void windowClosing(WindowEvent e)

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 5: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 5/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

{System.exit(0);

}};Janela.addWindowListener(x);

}}

Gerenciador de Layout – setLayout()

-  Sintaxe geral:getContentPane().setLayout(new GridLayout(linha, coluna));

-  Todos os componentes gráficos (botões, labels, caixas de edição etc) precisam ser adicionados às

células do frame. Para que isto seja possível é preciso utilizar um gerenciador de layout, sendo osetLayout um deles.

-  GridLayout(linha, colunas) define como será a tabela no frame. os argumentos são o número delinhas e o número de colunas.

-  Por exemplo, se definirmos a instrução: getContentPane().setLayout(new GridLayout(4, 1));temos uma tabela de 4 linhas por 1 coluna:

Célula 1

Célula 2

Célula 3

Célula 4

- Se não definirmos o layout, o frame terá uma única célula.

Cada objeto deve ser adicionado à tabela do frame com o método add (). A ordem de inserção é importantee define a disposição dos objetos. A inserção dos objetos deve obedecer a sequencia: de cima para baixo eda esquerda para a direita. Não é possível desobedecer esta sequencia.

Classe JButton - objeto botão- Sintaxe para instanciação:

JButton <botão> = new JButton("texto", ícone);Da mesma forma que um label, o botão pode ser inicializado somente com um texto, somente com um íconeou com ambos.

Sendo b1 um objeto botão:

b1.setHorizontalTextPosition(AbstractButton.LEFT);Define a posição do texto no botão. Essa propriedade deve ser definida quando o botão possui textoe ícone. O padrão é que o texto apareça do lado direito da imagem. A configuração acima especifica que o

texto apareça do lado esquerdo da imagem (LEFT).

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 6: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 6/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

b1.setBackground(new Color(100,180,180));

Define a cor do fundo do botão.

b1.setForeground(Color.black);Define a cor do primeiro plano, isto é, a cor da fonte.

b1.setFont(new Font("ScriptS", Font.BOLD, 20));Define a fonte, o estilo e o tamanho da letra.

b1.setEnabled(true);Deixa o botão ativado. Esta instrução pode ser omitida porque todo botão quando criado estáautomaticamente habilitado. Caso você queira desabilitar o botão, coloque false  como argumento dométodo. Neste caso, o botão aparecerá em tons de cinza e não poderá ser pressionado.

b1.addActionListener(this);O método addActionListener (this ) registra o botão para que o método actionPer ormed possa reconhecer oseventos gerados pelo objeto.

 b1.setToolTipText("Pressione para realizar uma busca");Este método insere uma linha de mensagem quando o botão do mouse é passado sobre o botão. No final dotexto, as teclas de atalho também são exibidas para orientar o usuário a este ação.

b1.setMnemonic(KeyEvent.VK_B);Este método é utilizado para estabelecer as teclas de atalho para o botão. Neste caso, ALT+B fará o mesmoefeito que o pressionamento do botão.

 ATENÇÃO: As constantes para as teclas estão definidas na classe KeyEvent. Todas as teclas possuem umaconstante definida. Abaixo exemplificamos as teclas mais comuns a esta finalidade:

 VK_A ... VK_Z VK_0 ... VK_9 VK_F1 ... VK_F12

getContentPane().setLayout(new Flow Layout());Outro gerenciador de layout é o FlowLayout(). Este gerenciador funciona como um editor de textos. Ele vaiinserindo os objetos da esquerda para a direita no frame e quando não houver mais espaços ele saltará paraa célula de baixo automaticamente.

public void actionPerformed( ActionEvent e){}O método actionPerformed () é responsável por reconhecer em que objeto o usuário realizou um evento. Oargumento e da classe ActionEvent recebe a identificação do objeto que recebeu a ação do usuário.

e.getSource()Este método retorna a identificação do objeto que recebeu o evento.

O programa a seguir mostra o uso de botões. Quando um botão é pressionado, uma mensagem éapresentada na tela do DOS.

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 7: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 7/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

botão JButton

import java.awt.*;import java.awt.event.*;import javax.swing.*;

public class Exemplo0903 extends JFrameimplements ActionListener 

{JButton b1,b2;ImageIcon icone = new ImageIcon("C:/windows/hlpglobe.gif");

public Exemplo0903(){setTitle("Inserindo botoes na janela");setSize(350,100);setLocation(50,50);

getContentPane().setBackground(new Color(180,180,180));

b1 = new JButton("Busca",icone);b1.setHorizontalTextPosition(AbstractButton.LEFT);b1.setBackground(new Color(100,180,180));b1.setForeground(Color.black);b1.setFont(new Font("ScriptS", Font.BOLD, 20));b1.setEnabled(true);b1.addActionListener(this);b1.setToolTipText("Pressione para realizar uma busca");b1.setMnemonic(KeyEvent.VK_B);

b2 = new JButton("Cancelar");

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 8: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 8/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

b2.addActionListener(this);b2.setMnemonic(KeyEvent.VK_C);

b2.setToolTipText("Pressione para cancelar");getContentPane().setLayout(new FlowLayout());getContentPane().add(b1);getContentPane().add(b2);}

public void actionPerformed( ActionEvent e){  / / metodo implementado pelo ActionListener  if (e.getSource()==b1)

System.out.println("Botao 1 pressionado");if (e.getSource()==b2)

System.out.println("Botao 2 pressionado");

}

public static void main(String args[]){JFrame Janela = new Exemplo0903();Janela.show();

WindowListener x = new WindowAdapter(){

public void windowClosing(WindowEvent e){System.exit(0);

}};Janela.addWindowListener(x);}

}

Explicações 

public class Exemplo0903 extends JFrameimplements ActionListener 

 ActionListener é uma interface. Todas as aplicações que utilizam componentes que interagem com usuáriosprecisam de uma interface. Em Java existe um método padrão para o processamento de todos os objetosque interagem com o usuário. Um destes métodos é o actionPerformed. Através deste método devemosreconhecer em que objeto o usuário realizou uma ação.

Classe JTextField - caixa de texto

Resumo dos métodos:

JTextField() Cria uma caixa de texto vazia. T1 = new JTextField();JTextField(String) Cria uma caixa de texto com a string

dada.T1 = new JTextField("0");

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 9: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 9/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

getText() Obtém o texto do objeto. T1.getText();setEditable(Boolean) Especifica se o componente é editável ou

não.

T3.setEditable(false);

setText() Especifica o texto a ser contido nocomponente.

T3.setText("" + result);*

* Neste caso, a variável numérica result é concatenada com "" (string vazia) a fim de facilitar a conversãopara um valor String, visto que a caixa de texto somente recebe valores caracteres.

Programa de calculadora simples.

caixa de ediçãoJTextField

rótulo JLabel

botões JButton

import java.awt.*;import java.awt.event.*;import javax.swing.*;

class Exemplo0904 extends JFrame implements ActionListener{

JLabel L1,L2,L3;JButton B1, B2, B3, B4, B5;JTextField T1,T2,T3;

public static void main(String args[]){

JFrame Janela=new Exemplo0904();Janela.show();

WindowListener x = new WindowAdapter(){

public void windowClosing(WindowEvent e){System.exit(0);

}};Janela.addWindowListener(x);

}

Exemplo0904(){setTitle("Calculadora");setSize(350,90);

setLocation(50,50);

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 10: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 10/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

getContentPane().setBackground(new Color(150,150,150));getContentPane().setLayout(new GridLayout(3,4));

L1 = new JLabel("Num.1");L1.setForeground(Color.black);L1.setFont(new Font("",Font.BOLD,14));L2 = new JLabel("Num.2");L2.setForeground(Color.black);L2.setFont(new Font("", Font.BOLD, 14));L3 = new JLabel("Total");L3.setFont(new Font("", Font.BOLD, 14));

B1 = new JButton ("+");B1.addActionListener(this);B2 = new JButton ("-");

B2.addActionListener(this);B3 = new JButton ("x");B3.addActionListener(this);B4 = new JButton ("/");B4.addActionListener(this);B5 = new JButton ("Limpar");B5.addActionListener(this);B5.setBackground(Color.black);B5.setForeground(Color.white);

T1 = new  JTextField() ;T2 = new  JTextField() ;

T3 = new  JTextField() ;T3.setEditable(false);  / / somente leitura  getContentPane().add(L1);getContentPane().add(T1);getContentPane().add(B1);getContentPane().add(B2);getContentPane().add(L2);getContentPane().add(T2);getContentPane().add(B3);getContentPane().add(B4);getContentPane().add(L3);getContentPane().add(T3);getContentPane().add(B5);

}

public void actionPerformed(ActionEvent e){

if  (e.getSource()==B5){T1.setText(""); T2.setText(""); T3.setText("");return;

}float N1=0,N2=0,result=0;try {

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 11: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 11/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

N1 = Float.parseFloat(T1.getText());N2 = Float.parseFloat(T2.getText());

}catch (NumberFormatException erro){

T3.setText("Erro");return;

}if (e.getSource()==B1)

result = N1 + N2;if (e.getSource()==B2)

result = N1 - N2;if (e.getSource()==B3)

result = N1 * N2;

if (e.getSource()==B4)result = N1 / N2;T3.setText ("" + result );

}}

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 12: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 12/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

classe JPasswordField - Caixa de edição de senhas

- Esta classe tem o mesmo funcionamento que um objeto da classe JTextField() a única diferença é que oscaracteres digitados podem ser substituídos por outro caractere para preservar a senha.

setEchoChar() Especifica o caractere para aapresentação do texto.

P1.setEchoChar('?');

 ATENÇÃO: Caso o caracter não seja especificado através do método setEchoChar() o caracter apresentadoserá o asterisco (*).

caixa de ediçãoJTextField

caixa de edição

para senha

O programa a seguir é um programa de validação se senhas.

rótulo JLabel

import java.awt.*;import java.awt.event.*;import javax.swing.*;

class Exemplo0905 extends JFrame implements ActionListener{

JLabel L1,L2;

JTextField T1;JPasswordField P1;

public static void main(String args[]){JFrame Janela = new Exemplo0905();Janela.show();

 / / para fechar a janela WindowListener x = new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(0);

}};Janela.addWindowListener(x);

}Exemplo0905(){setTitle("Verifica Senha");setSize(350,65);getContentPane().setBackground(new Color(150,150,150));getContentPane().setLayout(new GridLayout(2,2));L1 = new JLabel("Digite a SENHA:");L2 = new JLabel("Validacao:");

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 13: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 13/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

L1.setForeground(Color.black);L2.setForeground(Color.black);

L1.setFont(new Font("",Font.BOLD,14));L2.setFont(new Font("",Font.BOLD,14));T1 = new JTextField();T1.setForeground(Color.red);P1 = new  JPasswordField();P1.setEchoChar('?');P1.addActionListener(this); / / registra o P1 getContentPane().add(L1);getContentPane().add(P1);getContentPane().add(L2);getContentPane().add(T1);

}

public void actionPerformed(ActionEvent e){if (P1.getText().equals("JAVA"))

T1.setText("Senha Valida");else 

T1.setText("Senha Invalida");}

}

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 14: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 14/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

classe NumberFormat - Formatação de valores num éricos

Para o uso desta classe é preciso importar a classe Numbe Fo mat :r r import java.text.NumberFormat;

Principais métodos:

getNumberInstance() Inicializa o objeto com a instância default  da máquina do usuário,definida pelo sistema operacional. No Windows este formato estádefinido no painel de controle (Configurações regionais - Idioma,país/região.)

setMinimumFractionDigits(n) Define a quantidade de casas decimais a serem apresentados.

Segue um exemplo desta classe sem o uso de componentes gráficos:

import java.text.NumberFormat;

class Formatacao{

public static void main(String args[]){

NumberFormat t;double valor=100.54;

t = NumberFormat.getNumberInstance();

t.setMinimumFractionDigits(3);System.out.println(t.format(valor));}

}

Este programa formata um valor com 4 casas decimais e o outro com 2 casas decimais.

caixa de ediçãoJTextField

import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.text.NumberFormat;

class Exemplo0906 extends JFrame implements ActionListener{

JTextField T1,T2;double valor1 = 1000.54;int valor2 = 100;NumberFormat df1,df2;

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 15: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 15/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

public static void main(String args[]){

JFrame Janela = new Exemplo0906();Janela.show();WindowListener x = new WindowAdapter(){public void windowClosing(WindowEvent e){System.exit(0);

}};Janela.addWindowListener(x);}

Exemplo0906(){setTitle("Formatando numeros");setSize(350,65);getContentPane().setBackground(new Color(150,150,150));getContentPane().setLayout(new GridLayout(1,2));df1 = NumberFormat.getNumberInstance();df1.setMinimumFractionDigits(4);df2 = NumberFormat.getNumberInstance();df2.setMinimumFractionDigits(2);T1 = new JTextField();T2 = new JTextField();

T1.setText("" + df1.format(valor1));T2.setText("" + df2.format(valor2));getContentPane().add(T1);getContentPane().add(T2);

}public void actionPerformed(ActionEvent e){}

}

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.

Page 16: Swing

5/7/2018 Swing - slidepdf.com

http://slidepdf.com/reader/full/swing-559aba83647f8 16/16

 

Portal JavaTutorial: Pacote Swing 

porDaniel Badawi 

Sobre o autor

Daniel Badawi é estudante de ciências da computação da FMU, São Paulo, SP. Amante de Java e do Portal Java.

Referências bibliográficas

Livros - Java 2: Ensino Didático: Desenvolvendo e Implementando Aplicações SERGIO FURGERI Editora Érica 

Portal Java – A maior comunidade de Java do Brasil – www.portaljava.com Todos os direitos reservados. Proibida a utilização ou replicação deste material sem prévio aviso.