Posicionamento de botoes

2 respostas
F

Ola galera fiz este janela mas os botao nela fica centralizado no meio e eu queria eles no topo alguem pode me ajudar?

a e gostaria de saber se tem como adicionar uma imagem de plano de fundo nesta janela

codigo

package livraria;

import java.awt.Dimension;

import java.awt.GridBagConstraints;

import java.awt.GridBagLayout;
import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class Livraria extends JFrame {

public Livraria(){
	super("Livraria");		
	setSize(1000, 1000);
	setVisible(true);
	JPanel jPanel1 = new JPanel();
	jPanel1.setLayout(new GridBagLayout());
	jPanel1.setPreferredSize(new Dimension(400, 600));
	
	GridBagConstraints c = new GridBagConstraints();
	c.gridx = 0; 
	c.gridy = 0;
	c.gridwidth = 1;
	c.gridheight = 1;
	c.fill = GridBagConstraints.HORIZONTAL;
	c.anchor = GridBagConstraints.EAST;
	
	
	
	JButton jBCadastrar = new JButton("Cadastrar cliente");
	jPanel1.add(jBCadastrar, c);		
	add(jPanel1);
	jBCadastrar.addActionListener(new java.awt.event.ActionListener() {
		public void actionPerformed(java.awt.event.ActionEvent e) {
			new Cadastrodocliente();
		}
	});	
	
	c.gridx = 1;
	JButton jACadastrar = new JButton("Cadastrar funcionario");
	jPanel1.add(jACadastrar, c);		
	add(jPanel1);
	jACadastrar.addActionListener(new java.awt.event.ActionListener() {
		public void actionPerformed(java.awt.event.ActionEvent e) {
			new Cadastrodofuncionario();
		}
	});	
	c.gridx = 2;
	JButton jCCadastrar = new JButton("Cadastrar Livro");
	jPanel1.add(jCCadastrar, c);		
	add(jPanel1);
	jCCadastrar.addActionListener(new java.awt.event.ActionListener() {
		public void actionPerformed(java.awt.event.ActionEvent e) {
			new Cadastrodolivro();
		}
	});	
	
	
	
	c.gridx = 3;
	JButton jBVisualizar = new JButton("Vendas");
	jPanel1.add(jBVisualizar, c);		
	add(jPanel1);
	jBVisualizar.addActionListener(new java.awt.event.ActionListener() {
		public void actionPerformed(java.awt.event.ActionEvent e) {
			new VisualizarBD();
		}
	});	
	c.gridx = 4;
	JButton jDVisualizar = new JButton("Pesquisa");
	jPanel1.add(jDVisualizar, c);		
	add(jPanel1);
	jDVisualizar.addActionListener(new java.awt.event.ActionListener() {
		public void actionPerformed(java.awt.event.ActionEvent e) {
			new VisualizarBD();
		}
	});	
}
public static void main(String args[]) {
	new Livraria();
}

}

2 Respostas

P

Ola fabinhoncn,

Olha um exemplo de JFrame, usando Layout Nulo

package exemplo_Janela;
     
    import javax.swing.*;
     
    public class Exemplo_JFrame extends JFrame{
     
        JPanel p1;
        JButton b1,b2;
        JTextField t1;
       
     
    public static void main(String args[]){
       
    JFrame janela = new Exemplo_JFrame();
    janela.setUndecorated(true);
    janela.getRootPane().setWindowDecorationStyle(JRootPane.FRAME);
    janela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    janela.setVisible(true);
       
       
    }
    public Exemplo_JFrame()
    {
       
        setBounds(200,100,450,140);
        setTitle("Posicionamento com Layout Nulo");
        p1 = new JPanel();
        p1.setLayout(null);
        b1 = new JButton("Limpar");
        b2 =  new JButton("Sair");
        t1 = new JTextField();
        b1.setBounds(20, 30, 100, 20);
        b2.setBounds(370, 65, 60, 20);
        t1.setBounds(130, 30, 300, 20);
        p1.add(b1,null);
        p1.add(b2,null);
        p1.add(t1,null);
        getContentPane().add(p1);
       
       
    }
    }

Na linha 27 foi criado o painel p1, e na linha 28 seu layout foi definido como nulo.

Na linha 29, 30 e 31 foram criados o objetos b1,b2 e t1. As linhas 32,33 e 34 definem o posicionamento e as dimensões que cada objeto vai ocupar na tela.
A sequência de parâmetros usada em setBounds é (posicionamento esquerdo, posicionamento superior, cumprimento, altura).

As linhas 35, 36 e 37 adicionam os objetos ao pai, no caso o painel p1.

Linha 38: adiciona o painel p1 ao frame.

Para voce colocar uma imagem de fundo voce pode tar criando um JLabel para inserir a imagem .

Dessa forma, no corpo da classe voce digita:

JLabel label1;

ImageIcon icone = new ImageIcon(“C:/Livros/Java/busca.gif”);

Ja no metodo construtor voce faz o seguinte!

public Exemplo_JFrame()
{

label1 = new JLabel(icone);
getContentPane().add(label1);

Espero ter ajudado. abraço

F

Obrigaduuuuu
Consegui arrumar o meu
valeu

Criado 1 de junho de 2011
Ultima resposta 6 de jun. de 2011
Respostas 2
Participantes 2