A maioria dos projetos atualmente são executados dentro de um ambiente web, e, portanto, utilizam tecnologia para tal: HTML, JavaScript, CGIs, EJBs, Servlets, etc. Porém, às vezes ainda nos deparamos com situações em que o sistema é executado no velho modelo conhecido como cliente/servidor, onde a interface gráfica realiza chamadas para um ambiente que possui toda a regra de negócio isolada, ou mesmo em sistemas mais simples, onde a tela e a regra de negócio andam juntas.
Nas primeiras versões do Java, a única forma de criar programas gráficos era através da AWT (Abstract Window Toolkit), uma biblioteca de baixo nível que depende de código nativo da plataforma onde irá rodar. Esta característica faz com que a mesma aplicação tenha sua apresentação gráfica diferente entre os diversos sistemas operacionais, visto que este é o responsável pela montagem das telas. Para suprir as necessidades cada vez mais frequentes de uma API mais estável e fácil de usar, o Swing foi criado como uma extensão do Java a partir da versão 1.2. O
Swing fornece componentes de mais alto nível, possibilitando assim uma melhor compatibilidade entre os vários sistemas onde o Java executa. Ao contrário da AWT, Swing não contém uma única linha de código nativo, e permite que as aplicações tenham diferentes tipos de visuais (skins), os chamados “Look and Feel”. Já com AWT isso não é possível, tendo todos os programas a aparência da plataforma onde estão rodando.
Nesta matéria iremos falar um pouco sobre a biblioteca javax.swing, que esteve presente durante muito tempo como o principal recurso para a construção de telas gráficas utilizando Java. O javax.swing é baseado na biblioteca gráfica AWT, foi introduzido no Java desde a versão 1.0 e elaborado pela Sun Microsystems em conjunto com a Netscape.
Neste artigo também iremos abordar containers do tipo JFrame e JPanel e outros componentes gráficos como JButton, JTextField, etc. Além disso, em nossa aplicação, também criaremos classes que darão suporte à regra do negócio.
O nosso projeto
Para falarmos sobre o desenvolvimento de telas utilizando javax.swing, iremos adotar a construção de uma simples tela de cadastro de clientes, apresentada na Figura 1, que possui alguns poucos campos a serem preenchidos. As informações dos novos clientes, na medida em que forem criados, para facilitar, serão armazenadas dentro de uma collection. Esta collection será acessada por uma classe utilitária que permitirá a manipulação das informações com métodos para alteração, exclusão e ordenação dos dados. Todas essas operações
...
Exibição do post interrompida. Para ler conteúdo completo,
clique aqui