Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Últimos assuntos
Relogio

Formulario usando GroupLayout

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Formulario usando GroupLayout

Mensagem  juk em Dom Set 08, 2013 5:29 pm


Código:

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.GroupLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

/**
 * @see http://stackoverflow.com/questions/8492065
 */
public class FormularioGroupLayout extends JPanel {

    //textolabel
    private JLabel TextoNome = new JLabel("Nome:");
    private JLabel TextoEndereco = new JLabel("Endereço:");
    private JLabel TextoTelefone = new JLabel("Telefone:");
    //caixadetexto
    private JTextField CampoNome = new JTextField(50);
    private JTextField CampoEndereco = new JTextField( 50);
    private JTextField CampoTelefone = new JTextField(50);
    //botaosalva
    private JButton salva = new JButton("salva");

    public FormularioGroupLayout() {
        this.setBorder(BorderFactory.createTitledBorder("Campo Formulario"));
        GroupLayout layout = new GroupLayout(this);
        layout.setAutoCreateGaps(true);
        layout.setAutoCreateContainerGaps(true);
        this.setLayout(layout);
        
        //alinhamento horizontal
        layout.setHorizontalGroup(layout.createSequentialGroup()
              .addGroup(layout.createParallelGroup(GroupLayout.Alignment.TRAILING)
                .addComponent(TextoNome)
                .addComponent(TextoEndereco)
                .addComponent(TextoTelefone))
              
              .addGroup(layout.createParallelGroup(GroupLayout.Alignment.CENTER)
                .addComponent(CampoNome)
                .addComponent(CampoEndereco)
                .addComponent(CampoTelefone)
                .addComponent(salva))
                );
              //.addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING)
                //.addComponent(salva)));
        
        //alinhamento vertical
        layout.setVerticalGroup(layout.createSequentialGroup()
              .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE)
                .addComponent(TextoNome)
                .addComponent(CampoNome))
             .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE)
                .addComponent(TextoEndereco)
                .addComponent(CampoEndereco))
             .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE)
                .addComponent(TextoTelefone)
                .addComponent(CampoTelefone))
              .addGroup(layout.createParallelGroup(GroupLayout.Alignment.TRAILING)
                .addComponent(salva))
                );
      
        //acao no botao salvar
        Manipuladores acao = new Manipuladores();
        salva.addActionListener(acao); //adiciona ele a açao
    }
//manipuladores
    public class Manipuladores implements ActionListener {

        @Override
        public void actionPerformed(ActionEvent evt) {

            String string = "Dados Cadastrados:" + "\nNome: " + CampoNome.getText()
                    + "\nEndereço: " + CampoEndereco.getText()
                    + "\nTelefone: " + CampoTelefone.getText(); //declara uma string a exibida

            //exibe evento

            JOptionPane.showMessageDialog(null, string);
        }
    }
    //

    private static void display() {
        JFrame tela = new JFrame("FORMULARIO 666");
        tela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        tela.setLayout(new BoxLayout(tela.getContentPane(), BoxLayout.X_AXIS));
              
        tela.add(new FormularioGroupLayout());
              
        tela.add(Box.createVerticalGlue());
        tela.pack();
        tela.setLocationRelativeTo(null);
        tela.setVisible(true);
    }

    public static void main(String[] args) {
        /*EventQueue.invokeLater(new Runnable() {
         @Override
         public void run() {
         display();
         }
         });*/

        display();

    }
}


Última edição por juk em Dom Set 08, 2013 5:45 pm, editado 2 vez(es)
avatar
juk

Mensagens : 225
Data de inscrição : 02/04/2012

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Outro exemplo de formulario em grouplayout

Mensagem  juk em Dom Set 08, 2013 5:31 pm


Código:


import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class group {

    //textolabel
    private JLabel TextoNome = new JLabel("Nome:");
    private JLabel TextoEndereco = new JLabel("Endereço:");
    private JLabel TextoTelefone = new JLabel("Telefone:");
    //caixadetexto
    private JTextField CampoNome = new JTextField(50);
    private JTextField CampoEndereco = new JTextField(50);
    private JTextField CampoTelefone = new JTextField(50);
    //botaosalva
    private JButton salva = new JButton("salva");

    public group() {
        JPanel painel = new JPanel();
        GroupLayout layout = new GroupLayout(painel);
        painel.setBorder(BorderFactory.createTitledBorder("Campo Formulario"));
        painel.setLayout(layout);
        // Ligue adicionando automaticamente as lacunas entre os componentes
        layout.setAutoCreateGaps(true);
        //Ligar automaticamente criando lacunas entre os componentes que tocam
        // A borda do recipiente e o recipiente.
        layout.setAutoCreateContainerGaps(true);




        // Create a sequential group for the horizontal axis.
        GroupLayout.SequentialGroup hGroup = layout.createSequentialGroup();
         //alinhamento horizontal do grupo
        hGroup.addGroup(layout.createParallelGroup().addComponent(TextoNome).addComponent(TextoEndereco).addComponent(TextoTelefone));
        hGroup.addGroup(layout.createParallelGroup().addComponent(CampoNome).addComponent(CampoEndereco).addComponent(CampoTelefone).addComponent(salva));
        layout.setHorizontalGroup(hGroup);

        // Create a sequential group for the vertical axis.
        GroupLayout.SequentialGroup vGroup = layout.createSequentialGroup();

        // The sequential group contains two parallel groups that align
        // the contents along the baseline. The first parallel group contains
        // the first label and text field, and the second parallel group contains
        // the second label and text field. By using a sequential group
        // the labels and text fields are positioned vertically after one another.
        //alinhamento vertical paralero do grupo
        vGroup.addGroup(layout.createParallelGroup(Alignment.BASELINE).addComponent(TextoNome).addComponent(CampoNome));
        vGroup.addGroup(layout.createParallelGroup(Alignment.BASELINE).addComponent(TextoEndereco).addComponent(CampoEndereco));
        vGroup.addGroup(layout.createParallelGroup(Alignment.BASELINE).addComponent(TextoTelefone).addComponent(CampoTelefone));
        vGroup.addGroup(layout.createParallelGroup(Alignment.CENTER).addComponent(salva));
        layout.setVerticalGroup(vGroup);
    }
    //manipuladores

    public class Manipuladores implements ActionListener {

        @Override
        public void actionPerformed(ActionEvent evt) {
            String string = "Dados Cadastrados:" + "\nNome: " + CampoNome.getText()
                    + "\nEndereço: " + CampoEndereco.getText()
                    + "\nTelefone: " + CampoTelefone.getText(); //declara uma string a exibida

            //exibe evento
            JOptionPane.showMessageDialog(null, string);
        }
    }
    private static void display() {
        JFrame frame = new JFrame("Forumulario");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        // frame.add(panel);
        frame.add(new FormularioGroupLayout());
        frame.pack();
        frame.setVisible(true);
    }
    public static void main(String[] args) {
        display();
    }
}
avatar
juk

Mensagens : 225
Data de inscrição : 02/04/2012

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum