Documente Academic
Documente Profesional
Documente Cultură
AWT
AWT ou Abstract Window Toolkit o antigo conjunto de ferramentas para interfaces grficas do Java Serve para oferecer infraestrutura mnima de interface grfica (nivela por baixo) Componentes tm aparncia dependente de plataforma imitado em recursos devido a depender de L suporte de cada plataforma para os componentes oferecidos Bugs e incompatibilidades entre plataforma
Histria AWT
Interface grfica: componentes, layout, eventos Java 1.0
Interface que roda de forma medocre em todas as plataformas (Abominable Window Toolkit) Modelo de eventos arcaico
Java 1.1
Melhora do modelo de eventos: por delegao usando design pattern Observer
Java 1.2
JFC/Swing substitui totalmente componentes AWT Mantm e estende a interface de eventos e layou
Swing
Swing: componentes leves, que no dependem de implementao nativa
Uma das mais completas bibliotecas grficas j criadas Baseada em JavaBeans: ferramentas GUI conseguem gerar cdigo legvel e reutilizvel
Swing
"Look & Feel": Drag & drop, cut & paste, undo/redo, texto estilizado. Exemplo. Veja demo em $JAVA_HOME/demo/jfc/SwingSet2/ No meu caso c:\Program Files\Java\jdk1.6.0_06\demo\jfc\SwingSet2\Swin gSet2.jar
Aplicaes Java
Dois tipos de Gui
Applet Standard
Applets
Aplicaes que rodam em navegador de internet Geralmente controladas pelo browser Restries de Segurana
O objeto passado como argumento durante a execuo (contexto grfico) , na verdade, um java.awt.Graphics2D (subclasse de Graphics)
Componentes AWT
H dois tipos importantes de componentes:
2) descendentes de java.awt.Container
Applet, Frame, Dialog.
Principais Containers
Frame (AWT) e JFrame (Swing) Panel e Jpane Applet e JApple
Graphics
Representa o contexto grfico Programador pode desenhar no componente usando referncia recebida via paint() ao sobrepor o mtodo:
public void paint(Graphics g) { Graphics2D g2 = (Graphics2D) g; Shape s = new Ellipse2D.Double(); g2.setColor(Color.red); g2.draw(s); }
Referencias
http://www.metropoledigital.ufrn.br/aulas_av ancado/web/disciplinas/desktop/aula_04.htm l
http://www.oracle.com/technetwork/java/index.htm l
Recursos Bsicos
Qualquer componente pode mudar a sua fonte e cor.
Cores instncia da classe java.awt.Color componente.setBackground(new Color(255,0,0)); componente.setForeGround(Color.yellow);
Recursos Bsicos
Qualquer componente pode mudar a sua fonte e cor.
Fonte instncia da classe java.awt.Font Font f = new Font("SansSerif", Font.BOLD, 24); componente.setFont(f)
Layouts
Pode-se utilizar um layout manager Layout padro
Frame e JFrame: BorderLayout (layout "geogrfico") Outros Containers: FlowLayout (layout seqencial)
JFrame
Para acrescentar objetos em um JFrame ou JApplet, preciso obter o content pane.
Container pane = frame.getContentPane(); Pane.addComponent(buttonA); pane.setLayout(referncia_para_layout);
JButton
Boto Simples
JButton b1 = new Button("text"); JButton b2 = new Button("text", icon);
Icones
Icon icon = new ImageIcon("caminho");
Principais Componentes
JTextField campo de entrada de dados simples JPasswordField campo para entrada de dados ocultos JTextArea campo de entrada de texto multilinha JEditorPane editor que entende HTML e RTF JTextPane editor sofisticado com vrios recurso
Exemplo JFrame
import java.awt.*; import javax.swing.*; public class Swinggy extends JFrame { public Swinggy(String nome) { super(nome); this.setSize(400,350); this.setVisible(true); } public static void main(String[] args) { new Swinggy("Swinggy 1.0"); } }