Escolar Documentos
Profissional Documentos
Cultura Documentos
A partir da versão do Java 1.2, a Sun incluiu o pacote Swing como evolução do pacote AWT.
No Swing foram incluídos componentes próprios que não dependiam de rotinas do sistema
operacional, além de oferecer uma interface gráfica mais evoluida e com maiores efeitos. Ao
contrário do AWT, o Swing emula seus próprios componentes (lightweight), sendo assim, a
renderização dos componentes é feita pelo java. O Swing também supriu as
incompatibilidades, possibilitando utilizar os mesmos componentes do AWT em qualquer
plataforma, independente das possíveis implementações nativas do sistema operacional. A
família de componentes Swing possui as seguintes características:
Componentes Swing: São uma nova geração de componentes com vasta capacidade
de configurações e funcionalidades.
Suporte para múltiplos Pluggable Look and Feel: Possibilita que aplicações Java
utilizarem diferentes aparências visuais que podem ou não serem adaptadas ao
ambiente de execução utilizado.
Acessibilidade: Possibilita o uso integrado de tecnologias para auxílio de portadores
de necessidades especiais através de monitores e teclados adaptados.
Java 2D: É um pacote de classes para desenho 2D de gráficos, texto e imagens de alta
qualidade.
Drag and Drop: Este tipo de suporte consiste na capacidade de arrastar e soltar
componentes entre aplicações nativas.
2
Model – administra dados associados ao componenente;
View – é responsável pela visualização e aparência do componente;
Controller – gerencia o funcionamento e visualização do componente que integram
uma camada de código separada do modelo utilizado para armazenar seus dados.
Todavia, no SMA a funcionalidade e visualização dos componentes integram uma camada de
código separada do modelo utilizado para armazenar seus dados. Existe uma camada
responsável pela visualização e funcionalidade dos componentes, cuja função é permitir que
os componentes exibam uma apresentação diferente em cada plataforma, possibilitando
algumas personalizações inclusive na forma de controle dos componentes. Esta camada é
vinculada à JVM (Java Virtual Machine) e é conhecida como Puggable Look and Feel
(PL&F).
3
Conclusão
Com base nos estudos realizados sobre Swing, nota-se que o Swing é uma API de alto nível
e, consequentemente, possui maior abstração e menor aproximação das APIs do
sistema operacional. Swing é mais completa e independente do sistema operacional utilizado,
as aplicações desenvolvidas com o Swing possuem interfaces semelhantes. Tendo em vista os
componentes Swing destacados neste artigo, percebe-se uma praticidade na implementação
dos mesmos, permitindo que muitos sejam combinados para trazer diferentes possibilidades
de resultados esperados.
4
Referencias bibliografica
https://pt.wikiversity.org/wiki/Introdu%C3%A7%C3%A3o_ao_Java/Introdu
%C3%A7%C3%A3o_a_biblioteca_Swing
https://www.lncc.br/~rogerio/poo/04a%20-%20Programacao_GUI.pdf
5
Calculadora programa
package javax.swing;
package calculadora;
import javax.swing.*;
import java.awt.event.*;
6
private int memoria;
public Calculadora() {
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.getContentPane().setLayout(null);
leitura = 0;
memoria = 0;
this.add(display);
numero7.setText("7");
this.add(numero7);
numero4.setText("4");
this.add(numero4);
numero1.setText("1");
this.add(numero1);
numero0.setText("0");
7
numero0.setBounds(0, 330, 65, 65);
this.add(numero0);
numero8.setText("8");
this.add(numero8);
numero5.setText("5");
this.add(numero5);
numero2.setText("2");
this.add(numero2);
numeroP.setText(".");
this.add(numeroP);
numero9.setText("9");
this.add(numero9);
numero6.setText("6");
this.add(numero6);
8
numero3 = new JButton();
numero3.setText("3");
this.add(numero3);
somar.setText("+");
this.add(somar);
dividir.setText("/");
this.add(dividir);
multiplicar.setText("X");
this.add(multiplicar);
subtrair.setText("-");
this.add(subtrair);
igual.setText("=");
this.add(igual);
leitura *= 10;
9
leitura += 1;
display.setText(display.getText() + "1");
});
leitura *= 10;
leitura += 2;
display.setText(display.getText() + "2");
});
leitura *= 10;
leitura += 3;
display.setText(display.getText() + "3");
});
leitura *= 10;
leitura += 4;
display.setText(display.getText() + "4");
});
leitura *= 10;
leitura += 5;
display.setText(display.getText() + "5");
});
leitura *= 10;
leitura += 6;
display.setText(display.getText() + "6");
});
10
numero7.addActionListener((ActionEvent evt) -> {
leitura *= 10;
leitura += 7;
display.setText(display.getText() + "7");
});
leitura *= 10;
leitura += 8;
display.setText(display.getText() + "8");
});
leitura *= 10;
leitura += 3;
display.setText(display.getText() + "9");
});
leitura *= 10;
leitura += 0;
display.setText(display.getText() + "0");
});
operacao = '+';
memoria += leitura;
leitura = 0;
});
11
operacao = '-';
memoria += leitura;
leitura = 0;
});
operacao = 'X';
memoria += leitura;
leitura = 0;
});
operacao = '/';
memoria += leitura;
leitura = 0;
});
switch (operacao) {
case '.': {
break;
case '+': {
memoria += leitura;
break;
case '-': {
memoria -= leitura;
12
break;
case 'X': {
memoria *= leitura;
break;
case '/': {
memoria /= leitura;
break;
leitura = 0;
display.setText("" + memoria);
});
exemplo.setVisible(true);
13