Ajuda para colocar bordas nos componentes de uma tela

1 resposta
F

Oi pessoal,

Estou desenvolvendo um sistema em que preciso que os componetes da minha tela fiquem dentro de um "quadrado" e centralizados na tela.

Já tentei com o jseparator. coloquei um em cima e outro em baixo, mas nao consigo colocar o jseparator na vertical para colocar nas laterais. Tentei colocar tudo dentro de um jpanel e usar o BorderFactory, mas também nao adiantou. Não sei se é por causa do layout que estou utilizando que é um GroupLayout customizado. Segue abaixo o código:

public void setPanel() throws NoConnectionException {
		createPanel();

		JLabel clienteCorporateLabel = new JLabel("Cliente Corporate");
		clienteCorporateLabel.setForeground(Color.WHITE);
		clienteCorporateLabel.setFont(new Font("", Font.BOLD, 20));

		Dimension fieldSize = new Dimension(50, 25);
		Dimension dataSize = new Dimension(100, 25);

		nomeEstruturaField = new MyJTextField(20, 100, null, null);
		nomeEstruturaLabel = new JLabel("Nome da Estrutura:");
		nomeEstruturaLabel.setForeground(Color.WHITE);

		customerIdHighField = new NumberJTextField(10);
		customerIdHighLabel = new JLabel("Customer ID High:");
		customerIdHighLabel.setForeground(Color.WHITE);

		nivelCombo = new JComboBox();
		nivelCombo.addItem("");
		nivelCombo.addItem("10");
		nivelCombo.addItem("20");
		nivelCombo.addItem("30");
		nivelCombo.addItem("40");
		nivelLabel = new JLabel("Nível do Cliente:");
		nivelCombo.setPreferredSize(fieldSize);
		nivelLabel.setForeground(Color.WHITE);

		areaField = new NumberJTextField(2);
		areaLabel = new JLabel("Área do Cliente:");
		areaLabel.setForeground(Color.WHITE);

		cicloField = new NumberJTextField(2);
		cicloLabel = new JLabel("Ciclo do Cliente:");
		cicloLabel.setForeground(Color.WHITE);

		dataAtivacaoField = new JDateChooser(null, ConstantesLib.DATE_FORMAT);
		dataAtivacaoField.setPreferredSize(dataSize);
		dataAtivacaoLabel = new JLabel("Data de Ativação:");
		dataAtivacaoLabel.setForeground(Color.WHITE);

		respPgtoLabel = new JLabel("Responsável Pagamento:");
		respPgtoLabel.setForeground(Color.WHITE);

		pgtoSimButton = new JRadioButton("Sim");
		pgtoSimButton.setOpaque(false);
		pgtoSimButton.setForeground(Color.WHITE);

		pgtoNaoButton = new JRadioButton("Não");
		pgtoNaoButton.setOpaque(false);
		pgtoNaoButton.setForeground(Color.WHITE);

		ButtonGroup group1 = new ButtonGroup();
		group1.add(pgtoSimButton);
		group1.add(pgtoNaoButton);

		respContratoLabel = new JLabel("Responsável Contrato:");
		respContratoLabel.setForeground(Color.WHITE);

		contratoSimButton = new JRadioButton("Sim");
		contratoSimButton.setOpaque(false);
		contratoSimButton.setForeground(Color.WHITE);

		contratoNaoButton = new JRadioButton("Não");
		contratoNaoButton.setOpaque(false);
		contratoNaoButton.setForeground(Color.WHITE);

		ButtonGroup group2 = new ButtonGroup();
		group2.add(contratoSimButton);
		group2.add(contratoNaoButton);

		JSeparator separatorH1 = new JSeparator();
		separatorH1.setForeground(Color.WHITE);
		separatorH1.setBackground(Color.WHITE);
		separatorH1.setOpaque(true);
		separatorH1.setPreferredSize(new Dimension(100, 1));

		JSeparator separatorH2 = new JSeparator(JSeparator.VERTICAL);
		separatorH2.setForeground(Color.WHITE);
		separatorH2.setBackground(Color.WHITE);
		separatorH2.setOpaque(true);
		separatorH2.setPreferredSize(new Dimension(100, 1));
		
		okButton = new JButton("OK");
		okButton.addActionListener();

		CasGroupLayout principalLayout = new CasGroupLayout(getPanel(), false);

		principalLayout.createPararelGroup("H-Main", GroupLayout.Alignment.CENTER);
		principalLayout.createSequentialGroup("H-Labels");
		principalLayout.createSequentialGroup("H-Aux 1");
		principalLayout.createPararelGroup("H-Coluna 1.1", GroupLayout.Alignment.LEADING);
		principalLayout.createPararelGroup("H-Coluna 1.2", GroupLayout.Alignment.LEADING);
		principalLayout.createPararelGroup("H-Coluna 1.3", GroupLayout.Alignment.LEADING);
		principalLayout.createSequentialGroup("PGTO_H");
		principalLayout.createSequentialGroup("CONTRATO_H");
		principalLayout.createSequentialGroup("H-Table Btts");

		principalLayout.addComponentDefSize("PGTO_H", pgtoSimButton);
		principalLayout.addComponentDefSize("PGTO_H", pgtoNaoButton);

		principalLayout.addComponentDefSize("CONTRATO_H", contratoSimButton);
		principalLayout.addComponentDefSize("CONTRATO_H", contratoNaoButton);

		principalLayout.addComponent("H-Labels", clienteCorporateLabel);

		principalLayout.addComponent("H-Coluna 1.1", nomeEstruturaLabel);
		principalLayout.addComponent("H-Coluna 1.1", nomeEstruturaField);

		principalLayout.addComponent("H-Coluna 1.2", customerIdHighLabel);
		principalLayout.addComponent("H-Coluna 1.2", customerIdHighField);

		principalLayout.addComponent("H-Coluna 1.3", nivelLabel);
		principalLayout.addComponent("H-Coluna 1.3", nivelCombo);

		principalLayout.addComponent("H-Coluna 1.1", dataAtivacaoLabel);
		principalLayout.addComponent("H-Coluna 1.1", dataAtivacaoField);

		principalLayout.addComponent("H-Coluna 1.2", areaLabel);
		principalLayout.addComponent("H-Coluna 1.2", areaField);

		principalLayout.addComponent("H-Coluna 1.3", cicloLabel);
		principalLayout.addComponent("H-Coluna 1.3", cicloField);

		principalLayout.addLabelH("H-Coluna 1.1", respPgtoLabel);
		principalLayout.addGroup("H-Coluna 1.1", "PGTO_H");

		principalLayout.addLabelH("H-Coluna 1.2", respContratoLabel);
		principalLayout.addGroup("H-Coluna 1.2", "CONTRATO_H");

		principalLayout.addComponent("H-Table Btts", okButton);

		principalLayout.addGroup("H-Main", "H-Labels");
		principalLayout.addComponent("H-Main", separatorH1);
		principalLayout.addGroup("H-Aux 1", "H-Coluna 1.1");
		principalLayout.addGap("H-Aux 1", 32);
		principalLayout.addGroup("H-Aux 1", "H-Coluna 1.2");
		principalLayout.addGap("H-Aux 1", 32);
		principalLayout.addGroup("H-Aux 1", "H-Coluna 1.3");
		principalLayout.addGroup("H-Main", "H-Aux 1");
		principalLayout.addGroup("H-Main", "H-Table Btts");
		principalLayout.addComponent("H-Main", separatorH2);

		principalLayout.createSequentialGroup("V-Main");
		principalLayout.createPararelGroup("V-Linha 1", GroupLayout.Alignment.LEADING);
		principalLayout.createPararelGroup("V-Linha 2", GroupLayout.Alignment.LEADING);
		principalLayout.createPararelGroup("V-Linha 3", GroupLayout.Alignment.LEADING);
		principalLayout.createPararelGroup("V-Linha 4", GroupLayout.Alignment.LEADING);
		principalLayout.createPararelGroup("V-Linha 5", GroupLayout.Alignment.LEADING);
		principalLayout.createPararelGroup("V-Linha 6", GroupLayout.Alignment.LEADING);
		principalLayout.createPararelGroup("V-Linha 7", GroupLayout.Alignment.LEADING);
		principalLayout.createPararelGroup("V-Table Btts", GroupLayout.Alignment.CENTER);

		principalLayout.addLabelV("V-Linha 1", clienteCorporateLabel);

		principalLayout.addLabelV("V-Linha 2", nomeEstruturaLabel);
		principalLayout.addLabelV("V-Linha 2", customerIdHighLabel);
		principalLayout.addLabelV("V-Linha 2", nivelLabel);

		principalLayout.addComponentV("V-Linha 3", nomeEstruturaField);
		principalLayout.addComponentV("V-Linha 3", customerIdHighField);
		principalLayout.addComponentV("V-Linha 3", nivelCombo);

		principalLayout.addLabelV("V-Linha 4", dataAtivacaoLabel);
		principalLayout.addLabelV("V-Linha 4", areaLabel);
		principalLayout.addLabelV("V-Linha 4", cicloLabel);

		principalLayout.addComponentV("V-Linha 5", dataAtivacaoField);
		principalLayout.addComponentV("V-Linha 5", areaField);
		principalLayout.addComponentV("V-Linha 5", cicloField);

		principalLayout.addLabelV("V-Linha 6", respPgtoLabel);
		principalLayout.addLabelV("V-Linha 6", respContratoLabel);

		principalLayout.addComponentV("V-Linha 7", pgtoSimButton);
		principalLayout.addComponentV("V-Linha 7", pgtoNaoButton);
		principalLayout.addComponentV("V-Linha 7", contratoSimButton);
		principalLayout.addComponentV("V-Linha 7", contratoNaoButton);

		principalLayout.addComponent("V-Table Btts", okButton);

		principalLayout.addGroup("V-Main", "V-Linha 1");
		principalLayout.addGap("V-Main", 25);
		principalLayout.addComponent("V-Main", separatorH1);
		principalLayout.addGap("V-Main", 15);
		principalLayout.addGroup("V-Main", "V-Linha 2");
		principalLayout.addGroup("V-Main", "V-Linha 3");
		principalLayout.addGap("V-Main", 15);
		principalLayout.addGroup("V-Main", "V-Linha 4");
		principalLayout.addGroup("V-Main", "V-Linha 5");
		principalLayout.addGap("V-Main", 15);
		principalLayout.addGroup("V-Main", "V-Linha 6");
		principalLayout.addGroup("V-Main", "V-Linha 7");
		principalLayout.addGap("V-Main", 15);
		principalLayout.addGroup("V-Main", "V-Table Btts");
		principalLayout.addGap("V-Main", 15);
		principalLayout.addComponent("V-Main", separatorH2);

		principalLayout.setHorizontalGroup("H-Main");
		principalLayout.setVerticalGroup("V-Main");

		setDefaultFocusComponent(nomeEstruturaField);
		
	}

1 Resposta

Marky.Vasconcelos

Antes de: CasGroupLayout principalLayout = new CasGroupLayout(getPanel(), false);

getPanel().setBorder(new TitledBoder(""));
Criado 16 de julho de 2009
Ultima resposta 16 de jul. de 2009
Respostas 1
Participantes 2