Bom dia Galera,
Gostaria de uma dica para que eu consiga finalizar meu componente.
Uso o Netbeans 7.1 e desenvolvi um componente que contém o seguintes objetos:
JPanel - Panel principal
JPanel - Panel para armazenamento do JList
JList - Lista que irá conter a lista de objetos que irei passar.
JPanel - Panel para armazenamento dos botões
JButton - Botão Up - Botão para jogar o registro para cima.
JButton - Botão Down - Botão para jogar o registro para baixo.
O componente está funcionando perfeitamente, recebendo uma lista de dados de uma classe ( genérica ) e o usuário poderá alterar a ordem dos registros da JList.
Porém, sou meio que perfeccionista e estou tentando fazer com o que este componente não tenha uma tamanho fixo, ou seja, estou tentando que ele seja redimensionável para horizontalmente e verticalmente, mas infelizemente não estou conseguindo.
Tentei fazer via IDE a mesma estrutura do componente e “setei” a propriedade de redimensionamento e dei uma olhada no código gerado pela IDE e não consegui identificar a propriedade que realiza esta função.
Segue abaixo o código que incorpora os componentes aos JPanels para que vocês possam me auxiliar de alguma forma.
Panel que inclui o JList ao JPanel
panelLista.setBorder(BorderFactory.createTitledBorder(null, "Titulo do Painel", TitledBorder.LEFT, TitledBorder.TOP));
this.listaItens.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
scrollListaItens.setViewportView(listaItens);
GroupLayout panelEsquerdoGroupLayout = new GroupLayout(panelLista);
panelLista.setLayout(panelEsquerdoGroupLayout);
panelEsquerdoGroupLayout.setVerticalGroup(
panelEsquerdoGroupLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,panelEsquerdoGroupLayout.createSequentialGroup()
.addContainerGap()
.addComponent(scrollListaItens, GroupLayout.PREFERRED_SIZE, this.altura, Short.MAX_VALUE)
.addContainerGap()));
panelEsquerdoGroupLayout.setHorizontalGroup(
panelEsquerdoGroupLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,panelEsquerdoGroupLayout.createSequentialGroup()
.addContainerGap()
.addComponent(scrollListaItens, GroupLayout.PREFERRED_SIZE, 300, Short.MAX_VALUE)
.addContainerGap()));
Panel que inclui o JPanel e os botões ao JPanel Principal
GroupLayout panelPrincipalGroupLayout = new GroupLayout(panelPrincipal);
panelPrincipal.setLayout(panelPrincipalGroupLayout);
panelPrincipalGroupLayout.setHorizontalGroup(
panelPrincipalGroupLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,panelPrincipalGroupLayout.createSequentialGroup()
.addContainerGap()
.addComponent(panelLista, GroupLayout.PREFERRED_SIZE, this.largura, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(panelBotoes, GroupLayout.PREFERRED_SIZE, 50, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED)));
panelPrincipalGroupLayout.setVerticalGroup(
panelPrincipalGroupLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(panelPrincipalGroupLayout.createSequentialGroup()
.addContainerGap()
.addGroup(panelPrincipalGroupLayout.createParallelGroup(GroupLayout.Alignment.LEADING, false)
.addComponent(panelLista, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(panelBotoes, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))));