Upload
alexandro-souza
View
3
Download
0
Embed Size (px)
DESCRIPTION
mmmmm
Citation preview
DANIEL DE CAMARGO JAVA
1
Título: Construindo Formulários Data: 8/2/2011 Descrição: Criando Formulários
Construindo o formulário Geralmente, ao criar um formulário utilizaremos a técnica de herança de algum pacote gráfico, se utilizarmos o pacote awt, herdaremos da classe Frame, agora se formos utilizar o pacote swing herdaremos da classe JFrame, que possui mais recursos do que o pacote AWT. Outro ponto importante é que geralmente deve ser criado um método construtor com o mesmo nome da classe. Neste método construtor iremos definir todos os principais pontos do formulário como título, tamanho, posição, entre outras funções. Exemplo:
import java.awt.*;
import javax.swing.JFrame;
//awt possui o Frame, Button
//swing possui o JFrame, JButton (Estes tem mais recursos)
public class Form1 extends JFrame {
//método construtor
public Form1()
{
//define o título do formulário
setTitle ("Criando Nosso Primeiro Formulário");
//define o tamanho da janela
setSize(800,600);
//define a posição inicial
setLocation(100, 100);
//fecha o formulário da maneira correta, liberando a memória
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//método que não permite redimensionar o formulário
setResizable(false);
//getContentPane -> gerencia o formulário
//setBackground ( Color.cor ) - muda a cor de fundo do formulário. Detalhe,
para isso
//devemos importar o pacote awt, pois é dele as funções de cores
getContentPane().setBackground(Color.black);
//outra forma de definir cor é criando uma cor personalizada
//getContentPane().setBackground(new Color (135,135,235));
}
public static void main (String args[])
{
//chama o método construtor.
JFrame form1 = new Form1();
//exibe o formulário, porém existe outras formas
//form1.show();
DANIEL DE CAMARGO JAVA
2
//usaremos para visualizar a opção setVisible
form1.setVisible(true);
}
}
Agora iremos colocar alguns componentes para dar mais vida ao nosso formulário. Vamos adicionar um JLabel, um JButton e um JTextField. Todos eles seguem a mesma lógica, primeiro devemos definir, depois chamar o construtor correto e inicializar os parâmetros. Veja o exemplo abaixo:
import java.awt.*;
import javax.swing.*;
//awt possui o Frame, Button
//swing possui o JFrame, JButton (Estes tem mais recursos)
public class Form1_2 extends JFrame {
//definir meu label
JLabel lbl_titulo;
//definir um botão
JButton btn_cadastro;
//definir um textfield
JTextField txt_nome;
//método construtor
public Form1_2()
{
//define o título do formulário
setTitle ("Criando Nosso Primeiro Formulário");
//define o tamanho da janela
setSize(800,600);
//define a posição inicial
setLocation(100, 100);
//fecha o formulário da maneira correta, liberando a memória
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//método que não permite redimensionar o formulário
setResizable(false);
//getContentPane -> gerencia o formulário
//setBackground ( Color.cor ) - muda a cor de fundo do formulário. Detalhe,
para isso
//devemos importar o pacote awt, pois é dele as funções de cores
getContentPane().setBackground(Color.yellow);
//outra forma de definir cor é criando uma cor personalizada
//getContentPane().setBackground(new Color (135,135,235));
//define o meu rótulo com o texto "Exemplo de Rótulo"
lbl_titulo = new JLabel("Exemplo de Rótulo");
//insere o rótulo no formulário
DANIEL DE CAMARGO JAVA
3
getContentPane().add(lbl_titulo);
//inicializar o botão
btn_cadastro = new JButton("Botão Cadastro");
//insere o botão no formulário
getContentPane().add(btn_cadastro);
//inicializa a caixa de texto
txt_nome = new JTextField("");
getContentPane().add (txt_nome);
}
public static void main (String args[])
{
//chama o método construtor.
JFrame form1 = new Form1_2();
//exibe o formulário, porém existe outras formas
//form1.show();
//usaremos para visualizar a opção setVisible
form1.setVisible(true);
}
}
Obs.: Note que depois da execução do código abaixo, só iremos ver o TextField. Você pode pensar que deve estar errado, o que acontece é que não definimos um gerenciador para posicionar os nossos componentes. O Java tem alguns gerenciadores automáticos, contudo isso não quer dizer que não podemos posicioná-los manualmente. O gerenciador mais comum é o FlowLayout ele posiciona todos os componentes na ordem e da esquerda para a direita. Para utilizar, basta defini-lo antes. Geralmente colocamos antes de inicializarmos os componentes. O código ficaria assim ... getContentPane().setLayout(new FlowLayout()); ... Veja o código agora import java.awt.*;
import javax.swing.*;
//awt possui o Frame, Button
//swing possui o JFrame, JButton (Estes tem mais recursos)
public class Form1_3 extends JFrame {
DANIEL DE CAMARGO JAVA
4
//definir meu label
JLabel lbl_titulo;
//definir um botão
JButton btn_cadastro;
//definir um textfield
JTextField txt_nome;
//método construtor
public Form1_3()
{
//define o título do formulário
setTitle ("Criando Nosso Primeiro Formulário");
//define o tamanho da janela
setSize(800,300);
//define a posição inicial
setLocation(100, 100);
//fecha o formulário da maneira correta, liberando a memória
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//método que não permite redimensionar o formulário
setResizable(false);
//getContentPane -> gerencia o formulário
//setBackground ( Color.cor ) - muda a cor de fundo do formulário. Detalhe,
para isso
//devemos importar o pacote awt, pois é dele as funções de cores
getContentPane().setBackground(Color.yellow);
//outra forma de definir cor é criando uma cor personalizada
//getContentPane().setBackground(new Color (135,135,235));
//definir o layout dos componentes
getContentPane().setLayout(new FlowLayout());
//define o meu rótulo com o texto "Exemplo de Rótulo"
lbl_titulo = new JLabel("Exemplo de Rótulo");
//insere o rótulo no formulário
getContentPane().add(lbl_titulo);
//inicializar o botão
btn_cadastro = new JButton("Botão Cadastro");
//insere o botão no formulário
getContentPane().add(btn_cadastro);
//inicializa a caixa de texto agora com o tamanho de 50 caracteres visíveis.
txt_nome = new JTextField(50);
getContentPane().add (txt_nome);
}
public static void main (String args[])
{
DANIEL DE CAMARGO JAVA
5
//chama o método construtor.
JFrame form1 = new Form1_3();
//exibe o formulário, porém existe outras formas
//form1.show();
//usaremos para visualizar a opção setVisible
form1.setVisible(true);
}
}
Exercício: Desenvolva um formulário que esteja apto para receber os seguintes campos
Nome do Campo Tamanho em Caracteres
Código 10
Nome 100
Endereço 100
Email 100
Cidade 40
Estado 2
Observação 100
Próxima aula aprenderemos sobre outras formas de alinhar os componentes como GridLayout, BorderLayout e setBounds