AMMMMMS Posted December 8, 2009 at 03:27 PM Report #299270 Posted December 8, 2009 at 03:27 PM Gostaria que alguem me ajudasse no seguinte exercicio. Preciso de seleccionar um determinado item numa listbox1 e consoante o item seleccionado, vao aparecer outros items na listbox2. Por exemplo, se eu seleccionar gripe na listbox1, na listbox 2 terao que aparecer os medicamentos que eu escolher para tratar a gripe. Espero pela vossa ajuda.
IRX773 Posted December 8, 2009 at 04:04 PM Report #299281 Posted December 8, 2009 at 04:04 PM if else if else ... Se usares uma checkbox usa o if na check box ... Podes fazer uso da cena do visible/hiden ou do able/disable
AMMMMMS Posted December 8, 2009 at 05:00 PM Author Report #299287 Posted December 8, 2009 at 05:00 PM Podias.me dar um exemplo de um codigo Eu ja adicionei a listbox1 da seguinte maneira Listbox1.Items.Add (Gripe) como eu faco pra seleccionar gripe e ao carregar aparecer os medicamentos Eu ja tentei fazer por if mas nao esta aparecer nada na listbox 2, apenas na listbox 1 Obrigado
vbtipo Posted December 8, 2009 at 05:13 PM Report #299291 Posted December 8, 2009 at 05:13 PM Para resolver o teu problema tens que fazer o seguinte; 1 - Tens que ver qual é o item que estais a seleccionar 2 - Fazes um sql ou filtro na base de dados; 3 - Adicionar o resultado dessa pesquisa na Listbox2. Lema: Se eu não saber de alguma coisa não se preocupem porque tento sempre ajudar alguma coisita, nem que seja, por palpites/sugestões.
vasco16 Posted December 8, 2009 at 05:24 PM Report #299294 Posted December 8, 2009 at 05:24 PM Primeiro de tudo de onde veem esses valores das listbox? sao postos manualmente?
AMMMMMS Posted December 8, 2009 at 05:55 PM Author Report #299307 Posted December 8, 2009 at 05:55 PM Sim,eu coloco na listbox o que quero, por exemplo> Listbox1.Items.Add (Gripe) Listbox1.Items. Add (Dor) e o meu objectivo e selccionar um deles e conforme for gripe ao dor dar os medicamentos. estes medicamentos aparecem na listbox2 e tambem sao escolhidos por mim mas eu nao sei como faco a ligacao entre as listbox.
vasco16 Posted December 8, 2009 at 09:47 PM Report #299381 Posted December 8, 2009 at 09:47 PM Sim,eu coloco na listbox o que quero, por exemplo> Listbox1.Items.Add (Gripe) Listbox1.Items. Add (Dor) e o meu objectivo e selccionar um deles e conforme for gripe ao dor dar os medicamentos. estes medicamentos aparecem na listbox2 e tambem sao escolhidos por mim mas eu nao sei como faco a ligacao entre as listbox. Cada vez que inicias o programa, add items à lista? isso nao vai sobrecarregar?
renafi Posted December 9, 2009 at 11:14 AM Report #299442 Posted December 9, 2009 at 11:14 AM Mas se estiveres a preencher os items manualmente, o teu problema é só enviar os valores para a listbox2, quando seleccionares um item na listbox1? Então só tens de criar o Evento SelectedIndexChanged da listbox1, e aí preencher os items para a listbox2, de acordo com o item seleccionado (ListBox1.SelectedItem) Oracle Certified Professional - AdministraçãoOracle Certified Professional - Pl/sqlMCPD - Microsoft Certified Professional DeveloperMCTS - Microsoft Certified Technology Specialist
passado Posted December 9, 2009 at 11:25 AM Report #299443 Posted December 9, 2009 at 11:25 AM Se preenches manualmente tens de fazer: 1º detectar o que estas a seleccionar 2º select case com o que vai aparecer na lisbox2
ribeiro55 Posted December 9, 2009 at 03:31 PM Report #299483 Posted December 9, 2009 at 03:31 PM Podes construír uma estructura abstracta com simples emparelhamentos de listas. Podes ver aqui um exemplo do que te estou a tentar dizer. Um exemplo mais aproximado do teu problema seria algo como emparelhar listas a dicionários: (estou praticamente a dar-te o exercício, mas copy-paste sem perceberes ou fazeres o mínimo por perceber, é enganar-te a ti mesmo) Public Class Form1 Private Doenca As New Dictionary(Of String, List(Of String)) Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Doenca.Add("Gripe", New List(Of String)) Doenca("Gripe").Add("Comprimidos") Doenca("Gripe").Add("Sopas") Doenca("Gripe").Add("Descanço") Doenca.Add("Enxaquecas", New List(Of String)) Doenca("Enxaquecas").Add("Comprimidos") Doenca("Enxaquecas").Add("Paciência") Doenca.Add("Morte", New List(Of String)) Doenca("Morte").Add("Vender a alma ao diabo") Doenca("Morte").Add("Beber vodka do lidl") For Each D As String In Doenca.Keys ListBox1.Items.Add(D) Next End Sub Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged If Doenca.Keys.Contains(ListBox1.SelectedItem.ToString) Then ListBox2.Items.Clear() For Each Cura As String In Doenca(ListBox1.SelectedItem.ToString) ListBox2.Items.Add(Cura) Next End If End Sub End Class Sérgio Ribeiro "Great coders aren't born. They're compiled and released""Expert coders do not need a keyboard. They just throw magnets at the RAM chips"
AMMMMMS Posted December 9, 2009 at 04:56 PM Author Report #299498 Posted December 9, 2009 at 04:56 PM Obrigado pelas ajudas, consegui resolver o exercicio mas por duas checkbox.. Mesmo assim vi o codigo que enviaste e tambem ja percebi.
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