Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 – Projeto de Programas Programação Orientada a Objetos em Java GUI – Graphical User Interface Professor: César Melo Slides baseados em materiais preparados pelo prof. Horácio Fernandes
28
Embed
Programação Orientada a Objetos em Java · Componentes da Interface: Componentes da Interface abrangem todos os widgets e controles associados a uma interface gráfica. Exemplos
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
Universidade Federal do AmazonasDepartamento de Ciência da ComputaçãoIEC481 – Projeto de Programas
Programação Orientada a Objetos em Java
GUI – Graphical User Interface
Professor: César Melo
Slides baseados em materiais preparados pelo prof. Horácio Fernandes
As ferramentas de controle de janelas do java também conhecidas por AWT (Abstract Window Toolkit) são uns dos pontos fortes do java.
Estas ferramentas fornecem toda a funcionalidade que se podia esperar de um sistema moderno de janelas.
O AWT contém os mais usados componentes das interfaces gráficas atuais portanto habilita a aplicação a ser executada em sistemas gráficos completamente diferentes.
AWT – Abstract Windows Toolkitimport java.awt.*;
Todos os componentes tem: Uma posição e tamanho; Uma cor e uma cor de fundo.
Componentes podem ser habilitados e desabilitados; Existe uma interface padrão para os componentes
tratarem eventos
AWT – Abstract Windows Toolkitimport java.awt.*;
Componentes AWT podem ser divididos em três partes:
Componentes da Interface: Componentes da Interface abrangem todos os widgets e controles associados a uma interface gráfica. Exemplos destes componentes são: buttons, text labels, scrollbars, pick list e campos text-entry.
Containers: abrangem áreas nas quais os componentes da interface podem ser postos. Isto habilita os componentes a serem agrupados e a formarem um objeto mais coeso e fácil de ser manipulado. Um Panel é um exemplo deste tipo de componente.
Windows: são um tipo muito especial da classe Component. Todos os outros componentes são adicionados dentro de uma window. Normalmente quando se programa applets, windows não são usadas.
AWT – Abstract Windows Toolkitimport java.awt.*;
Principais componentes da Interface: BUTTON;
CANVAS;
CHECKBOX;
LABEL;
LIST;
CHOICE;
SCROLLBAR;
TEXTFIELD;
TEXTAREA
AWT – Componentes da Interface
AWT – Exemplo
Containers são simplesmente componentes que podem conter outros componentes.
Pense como uma maneira de subdividir uma área para construir a interface com o usuário, aonde os componentes podem ser colocados.
Existem dois tipos de containers: Panels e Windows. A maior diferença entre eles é que um Panel é definido
como uma área em uma janela já existente e Window é uma janela completamente nova. Quando a aplicação é uma Applet o único container que pode ser aplicado é o Panel.
AWT – Containers
AWT – Containers - Exemplo
Layout pode ser interpretado como uma máscara que é colocada sobre um container para definir como os seus componentes serão adicionados.
Normalmente é usado o layout BorderLayout(), baseado nos pontos cardeais.
AWT – Layout
AWT – Layout - Exemplo
Swing é um toolkit que inclui um extenso conjunto de componentes para construir GUIs e adicionar mais interatividade em aplicações Java.
Para criar um programa em Java com GUI, você terá que aprender sobre Swing.
O swing é uma extensão das classes AWT Inclui componentes como: tabelas e seus controles, listas e
seus controles, estruturas de árvores e seus controles, botões e etc.
Até mesmo o suporte a internacionalização e à acessibilidade é possível.
Suporta variados look and feels e a capacidade de que o desenvolvedor crie o seu próprio look and feel.
5 public class LabelTest extends JFrame{6 private JLabel L1,L2,L3;78 public LabelTest(){9 super("Testando a classe JLabel");10 Container container = getContentPane();
11 container.setLayout(new FlowLayout());
12
13 L1 = new JLabel("Label com texto");
14 L1.setToolTipText("Este e o label 1");
15 container.add(L1);
16
17 Icon martelo = new ImageIcon("c:/emmsr2005/java/tribunal_etica.gif");
18 L2 = new JLabel("Label com texto e icone",martelo,SwingConstants.LEFT);
19 L2.setToolTipText("Este e o Label 2");
20 container.add(L2);
21
22 L3 = new JLabel();
23 L3.setText("Label com texto, icone como botao");