aí está a função que eu tanto falo
public void adicionaBotaoScroll()
{
if (indice==0)
{
JLabel lblConsultas = new JLabel("Consultas");
lblConsultas.setBorder(BorderFactory.createEtchedBorder(EtchedBorder.RAISED));
lblConsultas.setLocation(0,0);
lblConsultas.setSize(new Dimension(226,25));
lblConsultas.setBackground(new Color(202, 213, 224));
lblConsultas.setOpaque(true);
lblConsultas.setForeground(Color.black);
lblConsultas.setFont(new Font("Arial", 3, 15));
lblConsultas.setHorizontalAlignment(JLabel.CENTER);
pnlPesquisa = new PnlPesquisa("pesquisa");
pnlPesquisa.setaLblBotao("A");
pnlPesquisa.setaEncontrados("0 encontrados");
pnlPesquisa.setaTxa("Pesquisa em branco");
pnlPesquisa.setLocation(5,30);
pnlCons.setSize(226,105);
pnlCons.setLayout(null);
pnlCons.setLocation(0,0);
pnlCons.add(lblConsultas);
pnlCons.add(pnlPesquisa);
// pnlCons.repaint();
arrayPaineis.add(arrayPaineis.size(),pnlPesquisa);
arrayBotoes.add(arrayBotoes.size(),pnlPesquisa.getBtn());
arrayBtnOk.add(arrayBtnOk.size(),pnlPesquisa.getBtnOk());
arrayBtnExclui.add(arrayBtnExclui.size(),pnlPesquisa.getBtnExclui());
((JButton)arrayBotoes.get(0)).addActionListener(this);
((JButton)arrayBtnOk.get(0)).addActionListener(this);
((JButton)arrayBtnExclui.get(0)).addActionListener(this);
adicionaPesquisa();
Conexao cons = new Conexao("select nm_pesquisa as nome, pesquisa, cd_seq_pesquisa from relatorios where cd_empresa="+
SiisParc.validado.getCdEmpresa()+" and cd_filial="+SiisParc.validado.getCdFilial()
+" and cd_funcionario="+SiisParc.validado.getCdUsuario()+" order by cd_seq_pesquisa");
result = cons.getResult();
lblFavoritos = new JLabel("Favoritos");
lblFavoritos.setBorder(BorderFactory.createEtchedBorder(EtchedBorder.RAISED));
lblFavoritos.setLocation(0,0);
lblFavoritos.setSize(new Dimension(226,25));
lblFavoritos.setBackground(new Color(202, 213, 224));
lblFavoritos.setOpaque(true);
lblFavoritos.setForeground(Color.black);
lblFavoritos.setFont(new Font("Arial", 3, 15));
lblFavoritos.setHorizontalAlignment(JLabel.CENTER);
pnlFav.setLayout(null);
pnlFav.setLocation(0,120);
pnlFav.add(lblFavoritos);
favoritos = 1;
try
{
int x = 30;
result.last();
numFavoritos = result.getRow();
result.first();
result.previous();
while (result.next())
{
pnlPesquisa = new PnlPesquisa("favoritos");
pnlPesquisa.setaLblBotao(""+favoritos);
pnlPesquisa.setaLblTitulo(result.getString("nome"));
pnlPesquisa.setBorder(null);
pnlPesquisa.setaEncontrados("0 encontrados");
pnlPesquisa.setaTxa(result.getString("pesquisa"));
pnlPesquisa.setLocation(5,x);
pnlFav.add(pnlPesquisa);
arrayPaineis.add(pnlPesquisa);
arrayBotoes.add(pnlPesquisa.getBtn());
arrayBtnOk.add(pnlPesquisa.getBtnOk());
arrayBtnExclui.add(pnlPesquisa.getBtnExclui());
((JButton)arrayBotoes.get(arrayBotoes.size()-1)).addActionListener(this);
((JButton)arrayBtnOk.get(arrayBotoes.size()-1)).addActionListener(this);
((JButton)arrayBtnExclui.get(arrayBotoes.size()-1)).addActionListener(this);
adicionaPesquisa();
cdSequencia = result.getInt("cd_seq_pesquisa")+1;
arraySequencia.add(""+result.getInt("cd_seq_pesquisa"));
favoritos++;
x += 80;
}
favoritos -= 1;
}
catch (SQLException e)
{
System.out.println("Não foi possível criar os botões de favoritos"+e);
}
pnlFav.setSize(226,25+((favoritos)*80));
JLabel lblMemoria = new JLabel("Memória");
lblMemoria.setBorder(BorderFactory.createEtchedBorder(EtchedBorder.RAISED));
lblMemoria.setLocation(0,0);
lblMemoria.setSize(new Dimension(226,25));
lblMemoria.setBackground(new Color(202, 213, 224));
lblMemoria.setOpaque(true);
lblMemoria.setForeground(Color.black);
lblMemoria.setFont(new Font("Arial", 3, 15));
lblMemoria.setHorizontalAlignment(JLabel.CENTER);
pnlMemoria = new PnlMemoria();
pnlMemoria.setLocation(5,30);
btnMemo = pnlMemoria.getBtn();
btnMemo.addActionListener(this);
pnlMem.setSize(226,105);
pnlMem.setLayout(null);
pnlMem.add(lblMemoria);
pnlMem.add(pnlMemoria);
pnlFav.setLocation(0,120);
pontoFavoritos = pnlFav.getLocation();
tamanhoFavoritos = pnlFav.getSize();
int tamanho = tamanhoFavoritos.height+pontoFavoritos.y+15;
pnlMem.setLocation(0,tamanho);
tamanho = tamanho + 110;
pnlBotoes.add(pnlCons);
pnlBotoes.add(pnlFav);
// se eu desabilitar a linha acima o scroll aparece encima
pnlBotoes.add(pnlMem);
pnlBotoes.setPreferredSize(new Dimension(226,tamanho));
backupSelecionado = 0;
indice = 1;
pnlPesquisa = (PnlPesquisa)arrayPaineis.get(0);
}
else
{
pnlPesquisa = new PnlPesquisa("pesquisa");
if (arrayPaineis.size()>0)
((JPanel)arrayPaineis.get(backupSelecionado)).setBorder(null);
Dimension d = pnlCons.getSize();
pnlCons.setSize(d.width,d.height+80);
if (pnlCons.getComponentCount()>1)
{
Point ponto = ((JPanel)pnlCons.getComponent(pnlCons.getComponentCount()-1)).getLocation();
pnlPesquisa.setLocation(5,ponto.y+80);
}
else
{
pnlPesquisa.setLocation(5,30);
}
pnlPesquisa.setaLblBotao(labels[arrayBotoes.size()-favoritos]);
pnlPesquisa.setaEncontrados("0 encontrados");
pnlPesquisa.setaTxa("Pesquisa em branco");
pnlCons.add(pnlPesquisa);
pnlCons.repaint();
Point pontoF = pnlFav.getLocation();
pnlFav.setLocation(0,pontoF.y+80);
Point pontoM = pnlMem.getLocation();
pnlMem.setLocation(0,pontoM.y+80);
pnlBotoes.setPreferredSize(new Dimension(226,pontoM.y+180));
arrayPaineis.add(arrayPaineis.size()-favoritos,pnlPesquisa);
arrayBotoes.add(arrayBotoes.size()-favoritos,pnlPesquisa.getBtn());
arrayBtnOk.add(arrayBtnOk.size()-favoritos,pnlPesquisa.getBtnOk());
arrayBtnExclui.add(arrayBtnExclui.size()-favoritos,pnlPesquisa.getBtnExclui());
((JButton)arrayBotoes.get((arrayBotoes.size()-1)-favoritos)).addActionListener(this);
((JButton)arrayBtnOk.get((arrayBtnOk.size()-1)-favoritos)).addActionListener(this);
((JButton)arrayBtnExclui.get((arrayBtnExclui.size()-1)-favoritos)).addActionListener(this);
backupSelecionado = (arrayBotoes.size()-1)-favoritos;
trataBotoes();
adicionaPesquisa();
preencheCampos();
}
}
o pnlBotoes é o painel que vai ser inserido dentro do scroll