Ajuda para inserir itens do arraylist na tela[Resolvido]

obrigada ChronosSage!!!
agora os modulos estão aparecendo so falta eu organiza-los na tela para ficarem embaixo das disciplinas corretas ,
ah para fazer isso tem como eu relacionar estes modulos com as respectivas disciplinas que ja estam la?
muitooooooo obrigada!!!

nessa linha esta pegando a lista de modulos da disciplina com o indice ‘0’

crie um loop para pegar os modulos de todas as disciplinas

algo assim

[code]String[] arrayDeDisciplinas = listaDisciplinas.toArray(new String[0]);

    //para pegar a lista de modulos da disciplina arrayDeDisciplinas[m]
    int colunas = arrayDeDisciplinas.length;
    for (int c = 0; c < colunas; c++) { //criar uma coluna por ves

        JCheckBox disciplina = new JCheckBox(arrayDeDisciplinas[c]);
        disciplina.setBounds(?);
        getContentPane().add(disciplina);    // getContentPane().repaint(); //a 1a linha é a disciplina

        ArrayList<Integer> listaDeModulos = mapaDisciplina.get(arrayDeDisciplinas[c]);
        //Converter para array
        Integer[] arrayDeModulos = listaDeModulos.toArray(new Integer[0]);
        int linhas = arrayDeModulos.length;
        //adiciona as outras linhas q saao os modulos da disciplina
        for (int l = 0; l < linhas; l++) {
            JCheckBox modulo = new JCheckBox("*" + arrayDeModulos[l]);
            modulo.setBounds(?);
            getContentPane().add(modulo);     //getContentPane().repaint();
            System.out.println("bah " + modulo.getText());
        }


    }

    getContentPane().repaint();[/code]

ok ChronosSage!!!
vou editar e mais tarde posto!!!
muito obrigada por toda ajuda que tu tens me dado :slight_smile:

fiz deste jeito so que deu este erro

Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap space at javax.swing.JToggleButton.<init>(Unknown Source) at javax.swing.JCheckBox.<init>(Unknown Source) at javax.swing.JCheckBox.<init>(Unknown Source) at TelaDeEscolhaModulos.<init>(TelaDeEscolhaModulos.java:178) at Menu$4.actionPerformed(Menu.java:306) ...
que aponta para este JCheckBox modulo = new JCheckBox("*" + arrayDeModulos[l]);
:frowning:
mas olha so vou tentando arrumar aqui e qualquer coisa eu posto!
:slight_smile:

onde esta “String[] arrayDeDisciplinas = listaDisciplinas.toArray(new String[0]);” adicione apos isso

int colunas = arrayDeDisciplinas.length; for (int c = 0; c < colunas; c++) { System.out.print("Disciplina("+arrayDeDisciplinas[c]+"):<"); ArrayList<Integer> listaDeModulos = mapaDisciplina.get(arrayDeDisciplinas[c]); Integer[] arrayDeModulos = listaDeModulos.toArray(new Integer[0]); System.out.print(Arrays.toString(arrayDeModulos)+">\n"); }
O codigo acima ira imprimir no console de maneira organizada, poste aki o resultado

verifiquei o ultimo codigo q vc postou e percebi q vc inverteu x e y

sobre o erro do checkbox, n encontrei problema

oi
ah fiz o que tu disseste e no console ficou assim

Disciplina(historia):<[1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4]> Disciplina(filosofia):<[1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3]> ....
nao ta mais dando aquele erro mas tu tinhas razão tinha haver com outros itens do programa mas ja ta solucionado:)
mt :lol: :lol: bg pela ajuda

[quote=paty_trind]oi
ah fiz o que tu disseste e no console ficou assim
Disciplina(historia):<[1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4]>
Disciplina(filosofia):<[1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3]>
nao ta mais dando aquele erro mas tu tinhas razão tinha haver com outros itens do programa mas ja ta solucionado:)
mt :lol: :lol: bg pela ajuda[/quote]
Cada numero é um modulo da disciplina, os modulos se repetem??, sao tantos assim??

na verdade os modulos não se repetem varias vezes em cada disciplina eu pensei que fosse os modulos de todas as disciplinas juntas que estivessem aparecendo no console.Não são?

insira o codigo System.out.println(“Adicionou:<”+disciplina+"><"+numeroDoModulo+">"); para exibir oq esta sendo inserido na lista

[code] while (resultado.next()) {
String disciplina = resultado.getString(1);//exemplo
ArrayList listaModulos = mapaDisciplina.get(disciplina);

        //verifica se ja existe disciplina, se n devemos criar    
        if (listaModulos == null) {
            //cria a lista de modulos    
            listaModulos = new ArrayList<Integer>();
            //adiciona a chave    
            listaDisciplinas.add(disciplina);
            //adiciona a lista no mapa    
            mapaDisciplina.put(disciplina, listaModulos);
        }
        int numeroDoModulo = resultado.getInt(2);//exemplo    
        listaModulos.add(numeroDoModulo);
        System.out.println("Adicionou:<"+disciplina+"><"+numeroDoModulo+">");
        System.out.println("Lista de modulos agora:<"+Arrays.toString(arrayDeModulos)+">");
    }[/code]

ops remova essa linha System.out.println(“Lista de modulos agora:<”+Arrays.toString(arrayDeModulos)+">");

agora o console ficou assim :shock:

[code]Lista de modulos agora:<[1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6]>
Adicionou:<2>
Lista de modulos agora:<[1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6]>
Adicionou:<3>

…[/code]
sem o system meu codigo ta assim

... String[] arrayDeDisciplinas = listaDisciplinas.toArray(new String[0]); int colunas = arrayDeDisciplinas.length; for (int c = 0; c < colunas; c++) { System.out.print("Disciplina("+arrayDeDisciplinas[c]+"):<"); ArrayList<Integer> listaDeModulos = mapaDisciplina.get(arrayDeDisciplinas[c]); Integer[] arrayDeModulos = listaDeModulos.toArray(new Integer[0]); System.out.print(Arrays.toString(arrayDeModulos)+">\n"); } ...

com o system

[code]resultado = comando.executeQuery(“select Id_disciplina,modulo from disc_modulo where ensino=’”+1+"’");
while (resultado.next())
{
String disciplina = resultado.getString(1);//exemplo
ArrayList listaModulos = mapaDisciplina.get(disciplina);

								//verifica se ja existe disciplina, se n devemos criar  
								if (listaModulos == null) {  
								    //cria a lista de modulos  
								    listaModulos = new ArrayList<Integer>();  
								    //adiciona a chave  
								    listaDisciplinas.add(disciplina);  
								    //adiciona a lista no mapa  
								    mapaDisciplina.put(disciplina, listaModulos);  
								    
								}  
								int numeroDoModulo = resultado.getInt(2);//exemplo  
								listaModulos.add(numeroDoModulo);  
								String[] arrayDeDisciplinas = listaDisciplinas.toArray(new String[0]);  
								 System.out.println("Adicionou:<"+disciplina+"><"+numeroDoModulo+">");  
								 ArrayList<Integer> listaDeModulos = mapaDisciplina.get(arrayDeDisciplinas[0]);  
									//Converter para array  
									Integer[] arrayDeModulos = listaDeModulos.toArray(new Integer[0]);  
								    System.out.println("Lista de modulos agora:<"+Arrays.toString(arrayDeModulos)+">"); 
								
							}
					  
							 
							String[] arrayDeDisciplinas = listaDisciplinas.toArray(new String[0]);  
							int colunas = arrayDeDisciplinas.length;  
							for (int c = 0; c < colunas; c++) {  
							    System.out.print("Disciplina("+arrayDeDisciplinas[c]+"):<");  
							    ArrayList<Integer> listaDeModulos = mapaDisciplina.get(arrayDeDisciplinas[c]);  
							    Integer[] arrayDeModulos = listaDeModulos.toArray(new Integer[0]);  
							    System.out.print(Arrays.toString(arrayDeModulos)+">\n");  
							}  [/code]

o q estou fazendo de errado?
:frowning:
contei e vi que cada disciplina aparece 10 vezes fazendo da primeira maneira q tu mostrou.
E tipo entre < e > ficam somente os modulos daquela disciplina mas eles estão sendo exibidos inumeras vezes!!

int numeroDoModulo = resultado.getInt(2);//exemplo listaModulos.add(numeroDoModulo); System.out.println("Adicionou modulo <"+numeroDoModulo+">+" na disciplina <"+disciplina+">");//isso mostra o modulo q foi adicionado //Converter para array Integer[] arrayDeModulos = listaModulos.toArray(new Integer[0]); System.out.println("Lista de modulos agora:<"+Arrays.toString(arrayDeModulos)+">");
troque pelas linhas entre a 17 a 25 do seu ultimo codigo postado
oq deve aparecer sao os modulos adicionados
exemplo:
Adicionou modulo <1> na disciplina
Lista de modulos agora:<[1]>
Adicionou modulo <2> na disciplina
Lista de modulos agora:<[1, 2]>
Adicionou modulo <3> na disciplina
Lista de modulos agora:<[1, 2, 3]>
Adicionou modulo <1> na disciplina
Lista de modulos agora:<[1]>
Adicionou modulo <2> na disciplina
Lista de modulos agora:<[1, 2]>

verifique se quando muda a disciplina, a lista de modulos da disciplina volta a <[1]>

pelo console o que percebi foi o seguinte os modulos da disciplina se repetem 62 vezes a cada exibição da lista
O console ta assim

Disciplina(biologia):<Lista de modulos agora:<[1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6]> ... Adicionou modulo <1> na disciplina <biologia> Adicionou modulo <2> na disciplina <biologia> Adicionou modulo <3> na disciplina <biologia> Adicionou modulo <4> na disciplina <biologia> Adicionou modulo <5> na disciplina <biologia> Adicionou modulo <6> na disciplina <biologia>
e a lista se repete no console 8 vezes e este systemAdicionou modulo <1> na disciplina <biologia> se repete 7 vezes
isso é por causa do system estar dentro do laço do for mas os modulos(dentro deste systemDisciplina(biologia):<Lista de modulos agora:<[...) não deveriam aparecer varias vezes,neh?
:shock:
muito obrigada pela ajuda

"Adicionou modulo <1> na disciplina "(extatamente assim) so pode aparecer uma unica vez, se está aparecendo + de uma, entao ou no banco de dados possuem varias linhas repetidas ou existe uma outra coluna em que diferencia cada modulo e disciplina (exemplo Disciplina/Modulo/Professor sendo q cada modulo da disciplina pode ser lecionado por varios professores)

Entao verifique o banco de dados
se for mysql acho q a query é “select * from sua_tabela”

a minha tabela do banco esta igual ao print em anexo
mt :lol: :lol: obg pela ajuda e explicações


pelo que percebi os itens estão sendo exibidos no console quando a tela esta sendo carregada ,quando eu faço a escolha na combo para abrir a tela de modulos so q eu não sei por que razão os mesmos itens aparecem tantas vezes na tela.:frowning:
Se tivres outra sugestão de como arrumar isso ou sei la me mostrares o q estou fazendo de errado eu aceito :lol:
de qualquer forma obrigada pela ajuda e por todas as explicações
:lol:
ha uma maneira de controlar a quantidade de vezes que os modulos aparecem na lista ou seja da para limitar isso?

Na imagem, biologia so tem ate o modulo 5, mas esta adicionando o modulo 6
a disciplina artes tem varias linhas com 1 e 2 modulolos repetidos

o codigo abaixo ira impedir a inserçao se o numero do modulo for menor ou igual ao tamanho da lista evitando repetições

[code] resultado = comando.executeQuery(“select Id_disciplina,modulo from disc_modulo where ensino=’” + 1 + “’”);
while (resultado.next()) {
String disciplina = resultado.getString(1);//exemplo
ArrayList listaModulos = mapaDisciplina.get(disciplina);

        //verifica se ja existe disciplina, se n devemos criar  
        if (listaModulos == null) {
            //cria a lista de modulos  
            listaModulos = new ArrayList<Integer>();
            //adiciona a chave  
            listaDisciplinas.add(disciplina);
            //adiciona a lista no mapa  
            mapaDisciplina.put(disciplina, listaModulos);

        }
        int numeroDoModulo = resultado.getInt(2);//exemplo  
        if (numeroDoModulo > listaModulos.size()) { //<<<
            moduloAnterior = numeroDoModulo;
            listaModulos.add(numeroDoModulo);
            String[] arrayDeDisciplinas = listaDisciplinas.toArray(new String[0]);
            System.out.println("Adicionou:<" + disciplina + "><" + numeroDoModulo + ">");
            ArrayList<Integer> listaDeModulos = mapaDisciplina.get(arrayDeDisciplinas[0]);
            //Converter para array  
            Integer[] arrayDeModulos = listaDeModulos.toArray(new Integer[0]);
            System.out.println("Lista de modulos agora:<" + Arrays.toString(arrayDeModulos) + ">");
        }//<<<
        

    }


    String[] arrayDeDisciplinas = listaDisciplinas.toArray(new String[0]);
    int colunas = arrayDeDisciplinas.length;
    for (int c = 0; c < colunas; c++) {
        System.out.print("Disciplina(" + arrayDeDisciplinas[c] + "):<");
        ArrayList<Integer> listaDeModulos = mapaDisciplina.get(arrayDeDisciplinas[c]);
        Integer[] arrayDeModulos = listaDeModulos.toArray(new Integer[0]);
        System.out.print(Arrays.toString(arrayDeModulos) + ">\n");
    }[/code]

//<<< onde modifiquei

vc passou a tabela errada, na aplicaçao ta ‘disc_modulo’, na imagem ‘disciplina_modulo_aluno’

oi bah desculpa eu mandei o print da tabela errada :oops:
to mandando a certa em anexo
to fazendo as alterações aqui
ja mando e bah mtoooooo obg pela ajuda :slight_smile: