Trabalhando com a interface gráfica em Java

2010
07.05

Introdução

Neste artigo veremos como usar gráficos na linguagem Java, estrarei explicando da forma mais simples possível. Será algo realmente básico, mas pretendo ir levando a mais avanço com o passar do tempo.

Vou utilizar a IDE NetBeans, versão 6.8, mas isso não impede de forma alguma que você use uma versão mais nova ou mais velha e também não impede você de usar outra IDE como o Eclipse.

Neste artigo não usarei Drag on Drop para a construção dos gráficos, será tudo na mão, para um melhor entendimento do leitor.

Espero que gostem da leitura e boa sorte com seus projetos!

Referências

Você pode obter o NetBeans em:

Você pode obter o Eclipse em:

Mais informações sobre o Java:

Criando uma janela simples com JFrame


Bom, como eu havia dito, neste artigo eu estarei usando a IDE NetBeans 6.8, mas você pode usar o Eclipse ou qualquer outra IDE para desenvolver, e nós não usaremos Drag and Drop por enquanto.

Vamos começar fazendo uma simples tela, para isso crie um projeto e uma classe. A minha classe vai se chamar Main.

Vamos ver o código e logo após eu vou explicá-lo:

import javax.swing.JFrame;
 
public class Main extends JFrame{
    public Main()
    {
        super("Janela básica, JFrame");
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setSize(270,200);
        this.setVisible(true);
    }
    public static void main(String args[]){
        new Main();
    }
}
 

Depois de compilá-lo e executá-lo vamos ver a seguinte tela:

Vamos às explicações:

Na primeira linha vemos um import, nós tivemos de importar a JFrame, pois ela não faz parte da Java.lang. Na terceira linha (public class...) declaramos a classe "Main", onde você pode pôr o nome da sua classe. Na mesma linha o extends, vamos dizer à JVM (Java Virtual Machine) que a nossa classe "Main" é secundária a outra classe, JFrame.

Na linha 4 (public Main()) estamos declarando o método que vai "fazer" a classe. Na linha 6 (super...) damos nome ao título da nossa janela, que no caso é "Janela básica, JFrame".

Na linha 8 você pode notar que temos o this (também na linha 9 e 10). O this é como uma referência para a própria classe, o DefaultCloseOperation diz o que acontece quando clicamos no botão X que fecha a janela, no caso ele usou um valor inteiro.

Na linha 9 definimos o tamanho da nossa janela e o setVisible tem como função mostrar a janela.

Na linha 12 citamos o método main (não é o nome da minha classe e sim o método principal, que deve estar presente em todos os seus projetos). E por fim a linha 13 setando o nosso Main().

Trabalhando com mensagens Simples


Agora que vimos como criar uma simples janela, vamos criar uma showmessage. Para isso digite o código:

import javax.swing.JOptionPane;
 
public class Main
{
    public static void main(String args[])
    {
        JOptionPane.showMessageDialog(null, "Exibindo uma mensagem");
    }
}
 

Compile e execute, teremos a seguinte mensagem:

Bom, esse código é mais simples e de um intendimento mais fácil, vamos à explicação.

Na primeira linha eu importei a biblioteca da classe JOptionPane e como estamos trabalhando com gráficos, importei a swing. Na linha 3 eu declarei o nome da classe, que novamente é Main (eu apenas apaguei o código usado anteriormente e fiz esse por cima, usando a mesma classe). Na linha 5 eu declarei o método Main (principal), reparem que eu uso letra maiúscula no método main(principal) e no nome da classe eu uso Main com letra maiúscula na inicial.

E por fim, na linha 7 eu coloquei um JOptionPane dizendo que eu queria uma showMessage, que exibi a mensagem "Exibindo uma mensagem".

Vamos trabalhar mais um pouquinho esse nosso código:

JOptionPane.showMessageDialog(null, "Exibindo uma mensagem");
 

Vamos colocar um título nela, para isso vamos usar:

JOptionPane.showMessageDialog(null, "Exibindo uma mensagem", "Título",JOptionPane.PLAIN_MESSAGE);

Vai ficar assim:

<img class="aligncenter" title="JOptionPane" src="http://img.vivaolinux.com.br/imagens/artigos/comunidade/1266110793.3.png" alt="" width="290" height="177" />
 

Criando botões


Agora vai ficar um pouco maior o código, vamos começar a trabalhar com os botões. Para isso use o código:

import javax.swing.*;
import java.awt.*;
 
public class Main extends JFrame
{
 
    public Main()
 
    {
        super("Trabalhando com botoes ");
 
        Container tela = this.getContentPane();
        tela.setLayout(null);
 
        JButton botao01 = new JButton ("Botao");
        botao01.setBounds(10, 10, 120, 50);
 
        tela.add(botao01);
        this.setSize(300,220);
        this.setDefaultCloseOperation(EXIT_ON_CLOSE);
        this.setVisible(true);
 
    }
 
    public static void main(String args[])
    {
        new Main();
    }
}

Depois de compilado e executado nós teremos a seguinte janela:

Aqui não terei de explicar muita coisa, pois a maioria eu já expliquei, mas vamos lá:

Nas duas primeiras linhas, onde eu fiz os imports, notem que eu não citei o nome de nenhuma classe, apenas deixei um *, isso quer dizer que eu importei todas as classes que estão sendo utilizadas na nossa classe, a Main.

Na linha 12 nós temos o contêiner da classe JFrame, usando o método getContentPane. Na linha 13 (tela.setLayout...) nós deixamos o gerenciador de layout como null. Na linha 15 nós alteramos o nome da variável do JButton para botao01 e escrevemos "Botao" nele (no caption).

Temos também o método setBounds, que da a posição e o tamanha do nosso Botão na tela (os parâmetros dados nele, que são 10, 10, 120, 50 são para definir o tamanho e a localização,, no caso da posição, é o 10 e o 10, ou melhor dizendo, os primeiros, os outros dois definem o tamanho do mesmo).

O resto acho que já foi explicado, então vamos avançar para a próxima página.

Criando um programa para encerrar


Agora que aprendemos um pouco de cada coisa, vamos criar uma aplicação um pouco mais interessante com o que nós obtemos nas páginas anteriores. Vamos criar uma tela, que pede o nosso nome, e quando nós digitamos ele o programa nos retorna uma mensagem com a string nome, responsável pelo nome digitado por nós.

Então usaremos o código:

import javax.swing.JOptionPane;
 
public class Main
{
    public Main() {
 
    }
 
        public static void main(String args[])
        {
            String  nome;
            nome = JOptionPane.showInputDialog(null, "Qual e o seu nome ?", "Digite seu nome" , JOptionPane.QUESTION_MESSAGE );
            JOptionPane.showMessageDialog(null, "Ola "+nome , "Seja bem vindo", JOptionPane.INFORMATION_MESSAGE);
        }
}

Ok, vamos explicar, importamos a classe JOptionPane e importamos a Swing para usarmos os gráficos, depois nós declaramos a string nome (a string está presente na java.lang, por isso não precisou importá-la), usamos um showInputDialog para exibir uma caixa de diálogo solicitando um nome, com o título "Digite seu nome" e o tipo de caixa de dialogo QUESTION_MESSAGE.

Embaixo nós dizemos Olá +nome (esse nome é o nome foi declarado na string), que retorna nosso nome com uma showMessage com o título "Seja bem vindo" e do tipo INFORMATION_MESSAGE.

Conclusão


O Java não é tão difícil de se trabalhar nesta parte (quando fazemos coisas básicas, é claro). Aqui nós vimos o início da coisa, em breve darei continuidade a este artigo, com outras partes para o mesmo, até chegar até um nível mais avançado.

Em breve: Conexão com BD usando Java

Your Reply

Spam Protection by WP-SpamFree


Rodrigo Martins is Digg proof thanks to caching by WP Super Cache!