Como poderia adicionar componentes conforme um numero. Estes componentes deveriam estar num determinado espaço, a igual distancia um do outro.
Segue o exemplo:
Essa imagem não diz muita coisa.
O que exatamente você quer fazer?
Conforme o número de entradas quero que apareça esse número dos jpanels por baixo de Confirmação de Chegadas
Pseudo código:
int entradas = <número de entradas>;
for (int i = 0; i < entradas; i++) {
<painel onde deseja adicionar>.add(new <classe do painel de cada linha>);
}
Obrigado, mas como faço para eles ficarem num certo local á mesma distância uns dos outros?
private int posicao = 50;
private void adicionarPainel() {
posicao += 40;
JPanel painelNovo = new JPanel();
painelNovo.setVisible(true);
painelNovo.setSize(200, 100);
painelNovo.setLocation(50, posicao);
seuJPanel.add(painelNovo);
seuJPanel.repaint();
}
Usa um Layout Manager que melhor se adequa à sua necessidade.
Dê uma olhada na documentação.
Acho que o ideal seria usar um JList com CustomListCellRender.
Usei esse codigo mas estou a receber um erro…
ConfirmarChegada panel = new ConfirmarChegada(porraDePanel);
listaEntradas.forEach((Reserva reserva) -> {
panel.setup(reserva);
panel.setVisible(true);
panel.setLocation(40, posicao);
porraDePanel.add(panel);
porraDePanel.repaint();
panel.adicionar(reserva);
posicao += DIFRENCA;
});
ERRO: Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException
O erro está nessa linha de codigo: porraDePanel.add(panel);
Kkkkkkk, vc tá adicionando esses painéis em um painel ou tá solto no jframe? Se for colocar no jpanel, vc tem que colocar o nome exato do painel. Olha esse vídeo: https://youtu.be/gB0hcUtHvXc
Usei esse codigo, o problema é o seguinte: adiciona o JPanel mas dá erro na mesma parte do codigo…
ERRO:
Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException at org.netbeans.lib.awtextra.AbsoluteLayout.addLayoutComponent(Unknown Source)
ninguem sabe porque isso ocorre?
Cara, eu tive esse erro também, mas ele se resolve se você mudar o layout do painel
O erro ocorre porque tem que aplicar as constraints…
panel.add(componente, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, posicaoInicial, -1, -1));
