Vídeo: Java #7 - Criando Interface Gráfica 2024
Antes de pular em GUIs Java, existem algumas coisas que você deve saber. O Java vem com três conjuntos de classes para criar aplicações GUI:
- The Abstract Window Toolkit (AWT): O conjunto original de classes, datado de JDK 1. 0.
As classes neste conjunto pertencem a pacotes cujos nomes começam com
java. awt
. Os componentes deste conjunto têm nomes como
Botão
,
TextField
,
Quadro
, e assim por diante.
Cada componente em um programa AWT tem um peer - um componente complementar que pertence ao próprio sistema operacional do computador. Por exemplo, quando você cria um botão AWT
, um computador Mac cria seu próprio tipo de botão para ser exibido na tela do usuário. Quando o mesmo programa é executado em um computador Windows, o computador Windows cria um tipo diferente de botão (um botão do Windows) para exibir na tela do computador. O código Java no AWT interage com o botão Mac ou Windows, adicionando funcionalidades adicionais onde a funcionalidade é necessária.
O AWT implementa apenas os tipos de componentes que estavam disponíveis em todos os sistemas operacionais comuns em meados da década de 1990. Então, usando AWT, você pode adicionar um botão à sua aplicação, mas você não pode facilmente adicionar uma tabela ou uma árvore.
- Java Swing: Um conjunto de classes criadas para corrigir algumas das dificuldades colocadas pelo uso do AWT. Swing foi introduzido no J2SE 1. 2.
As classes neste conjunto pertencem a pacotes cujos nomes começam com
javax. swing
. Os componentes deste conjunto têm nomes como
JButton
,
JTextField
,
JFrame
, e assim por diante.
Ao contrário de um antigo componente AWT, um componente Swing não tem par. Quando você cria um
JButton
em seu programa Java, o sistema operacional do computador não cria um botão próprio. Em vez disso, o
JButton
que você vê é um objeto Java puro. O código de renderização visual de Java desenha esse objeto em uma janela. Esta é uma boa notícia e más notícias. A boa notícia é que um programa Swing é o mesmo em todos os sistemas operacionais. Em um programa Swing, você pode criar componentes da tabela e componentes da árvore porque Java simplesmente os desenha na janela do computador. A má notícia é que os componentes Swing não são bonitos. Um
JButton
parece primitivo e bruto em comparação com um botão do Mac ou um botão do Windows.
As classes Swing do Java substituem algumas (mas não todas) das classes no AWT mais antigo. Para usar algumas das classes Swing, você precisa chamar algumas das antigas classes AWT.
- JavaFX: O mais novo conjunto de classes GUI no Oracle padrão Java. JavaFX vem com novas (er) versões do Java 7 e com todas as versões posteriores do Java.
As classes neste conjunto pertencem a pacotes cujos nomes começam com
javafx
.
JavaFX suporta mais de 60 tipos de componentes. (Claro, você quer um componente
Botão
. Mas você também quer um componente
Accordion
? JavaFX tem um.) Além disso, o JavaFX suporta operações multitouch e tira proveito dos gráficos especializados de cada processador capacidades.