User LoL Posted June 8, 2013 at 08:53 PM Report #511674 Posted June 8, 2013 at 08:53 PM Estou com um código que tem que varrer 3 listbox, e salvar os valores, acontece que não estou conseguindo conciliar os 3 for each ao mesmo tempo,o código é esse: For Each leo As String In Me.ListBox1.Items For Each leo2 As String In Me.ListBox2.Items For Each leo3 As String In Me.ListBox3.Items Salvar.WriteLine(" linha " & leo & " posicao " & leo2 & " caracter " & leo3 & " fim ") Next Next Next se os 3 listbox tem somente um item,salva normalente, mas se tem 2,ja salva 3 vezes cada item, porque,como faço pra corrigir isso? Não da pra colocar um Salvar.WriteLine depois do next, porque os valores tem que estar na mesma linha,conforme o codigo acima
thoga31 Posted June 8, 2013 at 09:29 PM Report #511679 Posted June 8, 2013 at 09:29 PM Por cada item da ListBox1 vais analisar todos os elementos da ListBox2, e por cada elemento da ListBox2 vais analisar todos os da ListBox3. Não entendo bem o que pretendes. Tens 3 ListBoxes. Queres que, tendo ambas o mesmo nº de elementos, ter a associação entre cada nº elemento das listas? Tipo isto? LB1: Lin1 Lin2 LB2: Pos1 Pos2 LB3: Car1 Car2 ASSOCIAÇÃO (resultado pretendido): linha "Lin1" posicao "Pos1" caracter "Car1" fim linha "Lin2" posicao "Pos2" caracter "Car2" fim Knowledge is free!
User LoL Posted June 8, 2013 at 09:46 PM Author Report #511680 Posted June 8, 2013 at 09:46 PM (edited) Não,na verdade a sequencia logica seria essa: For Each leo As String In Me.ListBox1.Items Next For Each leo2 As String In Me.ListBox2.Items Next For Each leo3 As String In Me.ListBox3.Items Next Salvar.WriteLine(" linha " & leo & " posicao " & leo2 & " caracter " & leo3 & " fim ") esse código aqui também nao esta funcionando. Oque ele deveria fazer e varrer os itens do listbox1,listbox2 e listbox 3, Para linha existente no listbox, ele cria uma linha no documento do savedialog Edited June 8, 2013 at 09:48 PM by User LoL
nelsonr Posted June 8, 2013 at 10:16 PM Report #511683 Posted June 8, 2013 at 10:16 PM Há ai qualquer coisa mal explicada sobre o propósito de cada lista. Queres passar uma vez em cada item de cada lista? Porque não poes o Salvar.WriteLine dentro de cada foreach? Vejo que a lista1 tem linhas, a 2 tem a posicao e a 3 tem caracteres. Queres mostrar só os selecionados de cada lista? Mostra lá o resultado que pretendias que o WriteLine mostrasse
User LoL Posted June 8, 2013 at 10:34 PM Author Report #511687 Posted June 8, 2013 at 10:34 PM Vou explicar melhor, Estou armazenando valores diferentes em cada listbox e quero colocar os valores da linha 1 em sequencia, da linha 2 em outra sequencia,e assim por diante. mais ou menos assim: esse seria os 3 listbox, cada um com seu respectivo valor: listbox1 listbox2 listbox3 item X item Y item Z itemX2 item Y2 itemZ2 teste testando 99 Agora, quero que salve exatamente assim: esse e o "Item X" e também salvamos o "item Y" e aqui o "item Z" esse e o "item X2" e também salvamos o "item Y" e aqui o "item Z" esse e o "teste" e também salvamos o "testando" e aqui o "99"
nelsonr Posted June 8, 2013 at 10:43 PM Report #511689 Posted June 8, 2013 at 10:43 PM (edited) E as listboxes têm sempre o mesmo número de elementos? Não tenho o VB.NET instalado e nao me lembro se o primeiro elemento em vb.net é o 0 ou o 1, mas podes fazer algo assim: For index as Integer = 0 to Me.ListBox1.Items.Count-1 Salvar.WriteLine("esse e o " & ListBox1.Items(index) & " e também salvamos o " & ListBox2.Items(index) & " e aqui o " & ListBox3.Items(index)) Next Convem certificares-te que as listboxs têm o mesmo número de items antes de fazeres isso (e que a listbox1 tem pelo menos 1 item) Edited June 8, 2013 at 10:51 PM by nelsonr
User LoL Posted June 8, 2013 at 10:48 PM Author Report #511690 Posted June 8, 2013 at 10:48 PM (edited) Sim a lista terá sempre o mesmo numero de itens, porem não estou conseguindo fazer aquilo que postei acima, criar uma linha no salvar para cada linha existente no listbox vou testar esse codigo,ja vejo se da certo Edited June 8, 2013 at 10:48 PM by User LoL
User LoL Posted June 8, 2013 at 10:59 PM Author Report #511691 Posted June 8, 2013 at 10:59 PM Não funcionou,agora nao salva nada dos listbox 😞
nelsonr Posted June 8, 2013 at 11:07 PM Report #511692 Posted June 8, 2013 at 11:07 PM Eim? E fizeste debug para ver se entra ali dentro do ciclo? Instalei aqui o VB.NET num instante e testei o exemplo que pus. Funciona bem. Só não testei o Salvar.WriteLine, mas enviei o resultado para uma variável e ficou o esperado.
User LoL Posted June 8, 2013 at 11:24 PM Author Report #511694 Posted June 8, 2013 at 11:24 PM O código que eu tentei adaptar ficou assim For Each leo As String In Me.ListBox1.Items For i = 0 To Me.ListBox1.Items.Count - 1 Salvar.WriteLine("esse e o " & ListBox1.Items(i) & " tambem temos o " & ListBox2.Items(i) & " e aqui o " & ListBox3.Items(i) ) Next Next O problema é esse: se os listbox tem 2 itens ele escreve duas vezes cada item, se tem 5 ele escreve 5 vezes cada um dos itens, porque?
nelsonr Posted June 8, 2013 at 11:26 PM Report #511695 Posted June 8, 2013 at 11:26 PM E para que esse foreach ?
User LoL Posted June 8, 2013 at 11:29 PM Author Report #511696 Posted June 8, 2013 at 11:29 PM Desculpe postei errado, o código funcionou direitinho. Obrigado,ja pode dar o tópico como resolvido
thoga31 Posted June 8, 2013 at 11:59 PM Report #511699 Posted June 8, 2013 at 11:59 PM Desculpe postei errado, o código funcionou direitinho. Obrigado,ja pode dar o tópico como resolvido Dá tu o tópico como resolvido, o tópico é teu. Topo da página, Ferramentas do Autor, Tópico Resolvido 😉 Knowledge is free!
User LoL Posted June 10, 2013 at 06:01 AM Author Report #511818 Posted June 10, 2013 at 06:01 AM Não aparece mais isso pra mim 😞 Já finalizei alguns tópicos,depois deixei de entrar uns dias e quando voltei não consegui mais finalizar nenhum tópico,não aparece mais, só Responder a este tópico
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now