O documento descreve o Java Swing, um conjunto de ferramentas para criação de interfaces gráficas do usuário em Java. O Swing inclui componentes como botões, rótulos e tabelas, além de suporte a funcionalidades como drag-and-drop, internacionalização e acessibilidade. O documento também discute os diferentes estilos visuais ("look and feels") disponíveis no Swing.
2. Java Swing
Conjunto de ferramentas necessárias para criação de um programa com uma Interface Gráfica do Usuário (GUI)
Inclui um conjunto de componentes para criação de GUIs e adição de interatividade a programas Java:
Controles de tabela, controles de lista, controles de árvore, botões, rótulos, etc.
Inclui suporte ao “desfazer”, pacotes customizáveis, internacionalização e acessibilidade, aparência de telas, drag and drop, manipulação de eventos, gerenciamento de janelas, etc.
11/29/2014
Algoritmos e Programação II – Java Swing
2
6. Controles Básicos
6 Algoritmos e Programação II – Java Swing 11/29/2014
Nome Java Look and Feel Windows Look and Feel
JButton
JCheckBox
JComboBox
7. Controles Básicos
11/29/2014
Algoritmos e Programação II – Java Swing
7
Nome
Java Look and Feel
Windows Look and Feel
JList
JMenu
8. Controles Básicos
11/29/2014
Algoritmos e Programação II – Java Swing
8
Nome
Java Look and Feel
Windows Look and Feel
JRadioButton
JSlider
JSpinner
JPasswordField
9. Displays Interativos de Informação Formatada
11/29/2014
Algoritmos e Programação II – Java Swing
9
Java Look and Feel
Windows Look and Feel
JColorChooser
10. Displays Interativos de Informação Formatada
11/29/2014
Algoritmos e Programação II – Java Swing
10
Java Look and Feel
Windows Look and Feel
JEditorPane e JTextPane
11. Displays Interativos de Informação Formatada
11/29/2014
Algoritmos e Programação II – Java Swing
11
Java Look and Feel
Windows Look and Feel
JFileChooser
12. Displays Interativos de Informação Formatada
11/29/2014
Algoritmos e Programação II – Java Swing
12
Java Look and Feel
Windows Look and Feel
JTable
JTextArea
13. Displays Interativos de Informação Formatada
11/29/2014
Algoritmos e Programação II – Java Swing
13
Java Look and Feel
Windows Look and Feel
JTree
14. Exibidores de Informação não Editável
11/29/2014
Algoritmos e Programação II – Java Swing
14
Nome
Java Look and Feel
Windows Look and Feel
JLabel
JProgressBar
JSeparator
JToolTip
15. Contêineres de Alto Nível
11/29/2014
Algoritmos e Programação II – Java Swing
15
Nome
Java Look and Feel
Windows Look and Feel
JApplet
JDialog
JFrame
16. Contêineres de Propósito Geral
11/29/2014
Algoritmos e Programação II – Java Swing
16
Java Look and Feel
Windows Look and Feel
JPanel
JScrollPane
17. Contêineres de Propósito Geral
11/29/2014
Algoritmos e Programação II – Java Swing
17
Java Look and Feel
Windows Look and Feel
JSplitPane
18. Contêineres de Propósito Geral
11/29/2014
Algoritmos e Programação II – Java Swing
18
Java Look and Feel
Windows Look and Feel
JTabbedPane
JToolBar
19. Contêineres de Propósito Especial
11/29/2014
Algoritmos e Programação II – Java Swing
19
Java Look and Feel
Windows Look and Feel
JInternalFrame
20. Contêineres de Propósito Especial
Algoritmos e Programação II – Java Swing
Java Look and Feel
Windows Look and Feel
JLayeredPane
JRootPane
21. Look and Feel
O conjunto de ferramentas Swing permite que possamos determinar a aparência (look and feel) da aplicação
Se não especificarmos uma aparência, o gerenciador de interfaces do Swing irá escolher uma para utilização
O conjunto de configurações das aparências disponíveis inclui:
Se nenhum for especificado, será utilizado o Java look and feel (chamado de Metal), que funciona em qualquer plataforma
Utilizar a aparência da plataforma nativa
Especificar uma aparência em particular:
Swing possui quatro aparências disponíveis: Java, Microsoft Windows, GTK+ (requer um tema) e CDE/Motif
Existem muitos outros disponíveis na Internet
Criar a sua própria aparência usando o pacote Synth
Utilizar uma aparência fornecida externamente
11/29/2014
Algoritmos e Programação II – Java Swing
21
22. Java Look and Feel (Metal)
11/29/2014
Algoritmos e Programação II – Java Swing
22
23. Windows Look and Feel
11/29/2014
Algoritmos e Programação II – Java Swing
23
24. CDE/Motif Look and Feel
11/29/2014
Algoritmos e Programação II – Java Swing
24
26. Outras Características do Swing
Transferência arrastar e soltar (drag and drop)
O conjunto de ferramentas Swing dá suporte a transferência de dados entre componentes dentro de uma mesma aplicação Java, entre diferentes aplicações Java e entre aplicações Java e nativas
Cortar, copiar e colar (cut, copy and paste)
A maioria dos componentes baseados em texto dão suporte às operações de cortar, copiar e colar
Em outros casos as ações apropriadas devem ser implementadas, como itens de menu, por exemplo
11/29/2014
Algoritmos e Programação II – Java Swing
26
27. Outras Características do Swing
Internacionalização
É o processo de projetar uma aplicação para que o usuário possa executá-la de acordo com sua preferência cultural sem a necessidade de modificar ou recompilar o código
Cada programa deve ser projetado com internacionalização em mente: rótulo dos componentes da GUI, mensagens de status, formato de moeda, data, telefone e endereço, etc.
Localização
É o processo de tradução do texto para uma linguagem em particular e adição de qualquer componente específico de uma localização
Gerenciadores de layout do Swing entendem como a localização afeta a interface do usuário – não é necessário criar um novo layout para cada localização
11/29/2014
Algoritmos e Programação II – Java Swing
27
29. Outras Características do Swing
Acessibilidade
Tecnologias assistivas existem para permitir que pessoas com desabilidades permanentes ou temporárias utilizem o computador
Isto inclui uma variedade de técnicas e equipamentos:
Interfaces por voz, ampliadores de telas, leitores de telas, closed caption, valorização do teclado, etc.
Em muitos países, incluindo EUA, Canadá e União Europeia, existem leis que requerem que as funções dos programas estejam de acordo com tecnologias assistivas
Um certo nível de acessibilidade está em todos os componentes Swing, mas acessibilidade total pode ser alcançada com regras simples, quando possível:
Uso de dicas, caminhos alternativos pelo teclado, descrição textual de imagens, etc.
11/29/2014
Algoritmos e Programação II – Java Swing
29
30. Outras Características do Swing
Suporte ao ícone System Tray
O desktop de algumas plataformas, como o Microsoft Windows, inclui uma system tray
No Windows, ela é chamada de “área da barra de tarefas”, no Gnome de “área de notificação” e no KDE de “System Tray”
Nas plataforma em que é suportado, uma aplicação pode inserir um mini-ícone na system tray,
Este ícone pode ser usado para notificar o usuário de uma mudança no status da aplicação ou a necessidade de realização de uma ação em particular
Clicando neste ícone uma janela da aplicação é aberta (ou um menu popup, ou uma dica)
Java dá suporte ao system tray a partir da versão 6 do Java SE
11/29/2014
Algoritmos e Programação II – Java Swing
30