Alterar posição de um JPanel adicionado em um JTabbedPane

4 respostas
Fexx

Bom dia.

Tenho um tela só para cadastro com alguns menus, nessa tela eu tenho um JTabbedPane, quando clico em algum JMenuItem chamo um JPanel que me abre uma aba.
Toda vez que clico em um JMenuItem ele adiciona uma nova aba na frente da primeira, independente de quantas abas abrir, sempre a primeira vai está na frente e aberta .
Minha duvida é: como posso adicionar uma aba e já abrir nela mesmo? e como posso mudar a posição dela?

Obrigado.(a).

4 Respostas

yhhik

vc pode criar um contador que conte quantas abas tem…toda vez que criar uma vc incrementa 1.
vc pode selecionar a aba assim:

Fexx

Obrigado pela resposta.

Eu já tente com o

JTabbedPane.setSelectdIndex(0);

mas não funcionou. veja o codigo.

package br.com.neveline.frame;

import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.UIManager;
import javax.swing.WindowConstants;

import org.dyno.visual.swing.layouts.Bilateral;
import org.dyno.visual.swing.layouts.Constraints;
import org.dyno.visual.swing.layouts.GroupLayout;
import org.dyno.visual.swing.layouts.Leading;

public class JFrameComponente extends JFrame {

	private static final long serialVersionUID = 1L;
	private JMenuItem jMenuItem0;
	private JMenuItem jMenuItem6;
	private JMenuItem jMenuItem7;
	private JMenuItem jMenuItem8;
	private JMenu jMenu0;
	private JMenuItem jMenuItem1;
	private JMenuItem jMenuItem3;
	private JMenuItem jMenuItem4;
	private JMenuItem jMenuItem5;
	private JMenu jMenu1;
	private JMenuItem jMenuItem2;
	private JMenuItem jMenuItem9;
	private JMenuItem jMenuItem10;
	private JMenu jMenu2;
	private JMenuBar jMenuBarra;
	private JTabbedPane jTabbedPrincipal;
	private PanelInformacoes informacoes;
	private PaneDadosProposta dadosDaProposta;

	private static final String PREFERRED_LOOK_AND_FEEL = "javax.swing.plaf.metal.MetalLookAndFeel";

	public JFrameComponente() {
		initComponents();
		informacoes = new PanelInformacoes();
		dadosDaProposta = new PaneDadosProposta();
	}

	private void initComponents() {
		setTitle("jPrincipal");
		setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
		setFont(new Font("Dialog", Font.PLAIN, 12));
		setForeground(Color.black);
		setLayout(new GroupLayout());
		add(getJTabbedPane0(), new Constraints(new Bilateral(0, 0, 5),
				new Leading(0, 359, 10, 10)));
		setJMenuBar(getJMenuBar0());
		setSize(955, 384);
		installLnF();
	}

	private JTabbedPane getJTabbedPane0() {
		if (jTabbedPrincipal == null) {
			jTabbedPrincipal = new JTabbedPane();
		}
		return jTabbedPrincipal;
	}

	/*
	 * get do Panel das abas do jTabbedPane
	 */

	private JPanel getInformacoes() {
		return informacoes;
	}

	private JPanel getDadosdaproposta() {
		return dadosDaProposta;
	}

	private JMenuBar getJMenuBar0() {
		if (jMenuBarra == null) {
			jMenuBarra = new JMenuBar();
			jMenuBarra.add(getJMenu0());
			jMenuBarra.add(getJMenu1());
			jMenuBarra.add(getJMenu2());
		}
		return jMenuBarra;
	}

	private JMenu getJMenu2() {
		if (jMenu2 == null) {
			jMenu2 = new JMenu();
			jMenu2.setText("Processos");
			jMenu2.setOpaque(false);
			jMenu2.add(getJMenuItem2());
			jMenu2.add(getJMenuItem9());
			jMenu2.add(getJMenuItem10());
		}
		return jMenu2;
	}

	private JMenuItem getJMenuItem10() {
		if (jMenuItem10 == null) {
			jMenuItem10 = new JMenuItem();
			jMenuItem10.setText("jMenuItem10");
		}
		return jMenuItem10;
	}

	private JMenuItem getJMenuItem9() {
		if (jMenuItem9 == null) {
			jMenuItem9 = new JMenuItem();
			jMenuItem9.setText("jMenuItem9");
		}
		return jMenuItem9;
	}

	private JMenuItem getJMenuItem2() {
		if (jMenuItem2 == null) {
			jMenuItem2 = new JMenuItem();
			jMenuItem2.setText("jMenuItem2");
		}
		return jMenuItem2;
	}

	private JMenu getJMenu1() {
		if (jMenu1 == null) {
			jMenu1 = new JMenu();
			jMenu1.setText("Gerencioador");
			jMenu1.add(getJMenuItem1());
			jMenu1.add(getJMenuItem3());
			jMenu1.add(getJMenuItem4());
			jMenu1.add(getJMenuItem5());
		}
		return jMenu1;
	}

	private JMenuItem getJMenuItem5() {
		if (jMenuItem5 == null) {
			jMenuItem5 = new JMenuItem();
			jMenuItem5.setText("jMenuItem5");
		}
		return jMenuItem5;
	}

	private JMenuItem getJMenuItem4() {
		if (jMenuItem4 == null) {
			jMenuItem4 = new JMenuItem();
			jMenuItem4.setText("Grade de Preços");
		}
		return jMenuItem4;
	}

	private JMenuItem getJMenuItem3() {
		if (jMenuItem3 == null) {
			jMenuItem3 = new JMenuItem();
			jMenuItem3.setText("Dados da proposta");
			jMenuItem3.addActionListener(new ActionListener() {

				public void actionPerformed(ActionEvent event) {
					jMenuItem3ActionActionPerformed(event);
				}
			});
		}
		return jMenuItem3;
	}

	private JMenuItem getJMenuItem1() {
		if (jMenuItem1 == null) {
			jMenuItem1 = new JMenuItem();
			jMenuItem1.setText("Dados da Licitação");
			jMenuItem1.addActionListener(new ActionListener() {

				public void actionPerformed(ActionEvent event) {
					jMenuItem1ActionActionPerformed(event);
				}
			});

		}
		return jMenuItem1;
	}

	private JMenu getJMenu0() {
		if (jMenu0 == null) {
			jMenu0 = new JMenu();
			jMenu0.setText("Cadastro");
			jMenu0.add(getJMenuItem0());
			jMenu0.add(getJMenuItem6());
			jMenu0.add(getJMenuItem7());
			jMenu0.add(getJMenuItem8());
		}
		return jMenu0;
	}

	private JMenuItem getJMenuItem8() {
		if (jMenuItem8 == null) {
			jMenuItem8 = new JMenuItem();
			jMenuItem8.setText("jMenuItem8");
		}
		return jMenuItem8;
	}

	private JMenuItem getJMenuItem7() {
		if (jMenuItem7 == null) {
			jMenuItem7 = new JMenuItem();
			jMenuItem7.setText("jMenuItem7");
		}
		return jMenuItem7;
	}

	private JMenuItem getJMenuItem6() {
		if (jMenuItem6 == null) {
			jMenuItem6 = new JMenuItem();
			jMenuItem6.setText("jMenuItem6");
		}
		return jMenuItem6;
	}

	private JMenuItem getJMenuItem0() {
		if (jMenuItem0 == null) {
			jMenuItem0 = new JMenuItem();
			jMenuItem0.setText("jMenuItem0");
		}
		return jMenuItem0;
	}

	private static void installLnF() {
		try {
			String lnfClassname = PREFERRED_LOOK_AND_FEEL;
			UIManager.setLookAndFeel(lnfClassname);
		} catch (Exception e) {
			System.err.println("Cannot install " + PREFERRED_LOOK_AND_FEEL
					+ " on this platform:" + e.getMessage());
		}
	}

	private void jMenuItem1ActionActionPerformed(ActionEvent event) {
		jTabbedPrincipal.addTab("Dados da Licitação", getInformacoes());

	}

	private void jMenuItem3ActionActionPerformed(ActionEvent event) {
		jTabbedPrincipal.addTab("Dados da Proposta", getDadosdaproposta());

	}

}
fernandopaiva
Fexx:
Obrigado pela resposta.

Eu já tente com o

JTabbedPane.setSelectdIndex(0);

mas não funcionou. veja o codigo.

package br.com.neveline.frame;

import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.UIManager;
import javax.swing.WindowConstants;

import org.dyno.visual.swing.layouts.Bilateral;
import org.dyno.visual.swing.layouts.Constraints;
import org.dyno.visual.swing.layouts.GroupLayout;
import org.dyno.visual.swing.layouts.Leading;

public class JFrameComponente extends JFrame {

	private static final long serialVersionUID = 1L;
	private JMenuItem jMenuItem0;
	private JMenuItem jMenuItem6;
	private JMenuItem jMenuItem7;
	private JMenuItem jMenuItem8;
	private JMenu jMenu0;
	private JMenuItem jMenuItem1;
	private JMenuItem jMenuItem3;
	private JMenuItem jMenuItem4;
	private JMenuItem jMenuItem5;
	private JMenu jMenu1;
	private JMenuItem jMenuItem2;
	private JMenuItem jMenuItem9;
	private JMenuItem jMenuItem10;
	private JMenu jMenu2;
	private JMenuBar jMenuBarra;
	private JTabbedPane jTabbedPrincipal;
	private PanelInformacoes informacoes;
	private PaneDadosProposta dadosDaProposta;

	private static final String PREFERRED_LOOK_AND_FEEL = "javax.swing.plaf.metal.MetalLookAndFeel";

	public JFrameComponente() {
		initComponents();
		informacoes = new PanelInformacoes();
		dadosDaProposta = new PaneDadosProposta();
	}

	private void initComponents() {
		setTitle("jPrincipal");
		setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
		setFont(new Font("Dialog", Font.PLAIN, 12));
		setForeground(Color.black);
		setLayout(new GroupLayout());
		add(getJTabbedPane0(), new Constraints(new Bilateral(0, 0, 5),
				new Leading(0, 359, 10, 10)));
		setJMenuBar(getJMenuBar0());
		setSize(955, 384);
		installLnF();
	}

	private JTabbedPane getJTabbedPane0() {
		if (jTabbedPrincipal == null) {
			jTabbedPrincipal = new JTabbedPane();
		}
		return jTabbedPrincipal;
	}

	/*
	 * get do Panel das abas do jTabbedPane
	 */

	private JPanel getInformacoes() {
		return informacoes;
	}

	private JPanel getDadosdaproposta() {
		return dadosDaProposta;
	}

	private JMenuBar getJMenuBar0() {
		if (jMenuBarra == null) {
			jMenuBarra = new JMenuBar();
			jMenuBarra.add(getJMenu0());
			jMenuBarra.add(getJMenu1());
			jMenuBarra.add(getJMenu2());
		}
		return jMenuBarra;
	}

	private JMenu getJMenu2() {
		if (jMenu2 == null) {
			jMenu2 = new JMenu();
			jMenu2.setText("Processos");
			jMenu2.setOpaque(false);
			jMenu2.add(getJMenuItem2());
			jMenu2.add(getJMenuItem9());
			jMenu2.add(getJMenuItem10());
		}
		return jMenu2;
	}

	private JMenuItem getJMenuItem10() {
		if (jMenuItem10 == null) {
			jMenuItem10 = new JMenuItem();
			jMenuItem10.setText("jMenuItem10");
		}
		return jMenuItem10;
	}

	private JMenuItem getJMenuItem9() {
		if (jMenuItem9 == null) {
			jMenuItem9 = new JMenuItem();
			jMenuItem9.setText("jMenuItem9");
		}
		return jMenuItem9;
	}

	private JMenuItem getJMenuItem2() {
		if (jMenuItem2 == null) {
			jMenuItem2 = new JMenuItem();
			jMenuItem2.setText("jMenuItem2");
		}
		return jMenuItem2;
	}

	private JMenu getJMenu1() {
		if (jMenu1 == null) {
			jMenu1 = new JMenu();
			jMenu1.setText("Gerencioador");
			jMenu1.add(getJMenuItem1());
			jMenu1.add(getJMenuItem3());
			jMenu1.add(getJMenuItem4());
			jMenu1.add(getJMenuItem5());
		}
		return jMenu1;
	}

	private JMenuItem getJMenuItem5() {
		if (jMenuItem5 == null) {
			jMenuItem5 = new JMenuItem();
			jMenuItem5.setText("jMenuItem5");
		}
		return jMenuItem5;
	}

	private JMenuItem getJMenuItem4() {
		if (jMenuItem4 == null) {
			jMenuItem4 = new JMenuItem();
			jMenuItem4.setText("Grade de Preços");
		}
		return jMenuItem4;
	}

	private JMenuItem getJMenuItem3() {
		if (jMenuItem3 == null) {
			jMenuItem3 = new JMenuItem();
			jMenuItem3.setText("Dados da proposta");
			jMenuItem3.addActionListener(new ActionListener() {

				public void actionPerformed(ActionEvent event) {
					jMenuItem3ActionActionPerformed(event);
				}
			});
		}
		return jMenuItem3;
	}

	private JMenuItem getJMenuItem1() {
		if (jMenuItem1 == null) {
			jMenuItem1 = new JMenuItem();
			jMenuItem1.setText("Dados da Licitação");
			jMenuItem1.addActionListener(new ActionListener() {

				public void actionPerformed(ActionEvent event) {
					jMenuItem1ActionActionPerformed(event);
				}
			});

		}
		return jMenuItem1;
	}

	private JMenu getJMenu0() {
		if (jMenu0 == null) {
			jMenu0 = new JMenu();
			jMenu0.setText("Cadastro");
			jMenu0.add(getJMenuItem0());
			jMenu0.add(getJMenuItem6());
			jMenu0.add(getJMenuItem7());
			jMenu0.add(getJMenuItem8());
		}
		return jMenu0;
	}

	private JMenuItem getJMenuItem8() {
		if (jMenuItem8 == null) {
			jMenuItem8 = new JMenuItem();
			jMenuItem8.setText("jMenuItem8");
		}
		return jMenuItem8;
	}

	private JMenuItem getJMenuItem7() {
		if (jMenuItem7 == null) {
			jMenuItem7 = new JMenuItem();
			jMenuItem7.setText("jMenuItem7");
		}
		return jMenuItem7;
	}

	private JMenuItem getJMenuItem6() {
		if (jMenuItem6 == null) {
			jMenuItem6 = new JMenuItem();
			jMenuItem6.setText("jMenuItem6");
		}
		return jMenuItem6;
	}

	private JMenuItem getJMenuItem0() {
		if (jMenuItem0 == null) {
			jMenuItem0 = new JMenuItem();
			jMenuItem0.setText("jMenuItem0");
		}
		return jMenuItem0;
	}

	private static void installLnF() {
		try {
			String lnfClassname = PREFERRED_LOOK_AND_FEEL;
			UIManager.setLookAndFeel(lnfClassname);
		} catch (Exception e) {
			System.err.println("Cannot install " + PREFERRED_LOOK_AND_FEEL
					+ " on this platform:" + e.getMessage());
		}
	}

	private void jMenuItem1ActionActionPerformed(ActionEvent event) {
		jTabbedPrincipal.addTab("Dados da Licitação", getInformacoes());

	}

	private void jMenuItem3ActionActionPerformed(ActionEvent event) {
		jTabbedPrincipal.addTab("Dados da Proposta", getDadosdaproposta());

	}

}

Eu tenho um código pronto disso, incluindo o close da aba, fiz para um projeto q estava fazendo q nem vou usar mais, problema é q está em minha casa mas depois posto como fazer.

t+

Fexx

Ok, fernandopaiva fico no aguado.

Obrigado(a).

Criado 13 de janeiro de 2012
Ultima resposta 13 de jan. de 2012
Respostas 4
Participantes 3