Duda Visual Basic

Iniciado por b_rabbit10, 20 Septiembre 2012, 07:00 AM

0 Miembros y 1 Visitante están viendo este tema.

b_rabbit10

Hola, recientemente hice un programa en VB 6. Que consiste en un generador de cocteles y/o bebidas, simulando el que usarían en un bar, restaurante etc.

El programa consiste en elegir un elemento o más de entre tres listas. Y al oprimir el boton "generar" arroja dos textos, uno para el nombre del cóctel y otro para los ingredientes. Así como una imagen distinta por cada bebida. El programa se puede decir ya está terminado, solo faltan algunos detalles, entre ellos destaca uno que cuando se elige un solo elemento genera una bebida cualquiera pero cuando se eligen 3 y no coinciden con la combinación, no genera bebida alguna.

Escuché que con una negación, hacía que al elegir un solo elemento no generaría nada. Saben que tipo de negación puedo usar? o algún otro recurso?
espero haberme dado a entender. Saludos

Aquí pongo un pequeño ejemplo, solo son dos combinaciones (bebidas) en total son 17.

CitarPrivate Sub Command1_Click()
    If (List1.List(List1.ListIndex) = "Vermú") And (List2.List(List2.ListIndex) = "Whisky") And (List3.List(List3.ListIndex) = "Angostura") Or (List3.List(List3.ListIndex) = "Hielo") Then
    Text1.Text = "Manhattan"
    Text2.Text = "5 cl. de whisky de centeno" + vbCrLf + "o whisky canadiense" + vbCrLf + "2 cl. de vermú rojo" + vbCrLf + "1 gota de angostura"
    Dim Ruta As String
    Ruta = "C:\fotos\manhattan.jpg"
    Image1.Picture = LoadPicture("C:\fotos\manhattan.jpg")
    End If
    If (List1.List(List1.ListIndex) = "Triple sec") Or (List1.List(List1.ListIndex) = "Jugo de Lima") And (List2.List(List2.ListIndex) = "Tequila") And (List3.List(List3.ListIndex) = "Sal") Or (List3.List(List3.ListIndex) = "Hielo") Or (List3.List(List3.ListIndex) = "Limón") Then
    Text1.Text = "Margarita"
    Text2.Text = "35ml. de Tequila" + vbCrLf + "20ml. de Triple sec" + vbCrLf + "15ml. Jugo de Lima"
    Ruta = "C:\fotos\margarita.jpg"
    Image1.Picture = LoadPicture("C:\fotos\margarita.jpg")
    End If

~.L.~

No genera nada por el simple hecho de que en los condicionales indica claramente que solo dara respuesta si hay una combinacion hace X cosa, pero como el visual ve que lo que ingresas no concuerda con ninguno de los condicionales, procede a no hacer nada...
Te mostraré aqui en detalle con un IF que tu tienes:
If (List1.List(List1.ListIndex) = "Vermú") And (List2.List(List2.ListIndex) = "Whisky") And (List3.List(List3.ListIndex) = "Angostura") Or (List3.List(List3.ListIndex) = "Hielo") Then

Lo que quiere decir ahi es que, si estan clickeados Vermu, Whisky, y Angostura o Hielo dara tal respuesta que puedes ver tu propio codigo.
En fin espero que mi explicacion te haya sido facil de entender y que puedas solucionar tu problemita.

EDIT: Si quieres que pase algo si no concuerda con ninguna combinacion puedes recurrir al ELSE.
Un saludo, ~.L.~
Si me necesitas por algun motivo o ocasión.
Skype: luuq.ruppi
MSN: luqaspeola1@hotmail.com

                                 ~.L.~