Visual Basic - Eliminar Item seleccionado en otro Combobox

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil
Val: 2
Ha aumentado su posición en 15 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Eliminar Item seleccionado en otro Combobox

Publicado por Rolando (2 intervenciones) el 15/10/2019 05:30:09
Primero que nada, les agradezco de antemano por la ayuda

Ahora si entrando en tema, necesito saber, como hacer que un item seleccionado, en por ejemplo, "combox1", ya no se despliegue en "combobox2", y a su vez los items seleccionados en el 1 y 2, ya no se desplieguen en "combobox3"

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Public Class Form1
    Public llenado(,) As String = {{"Blanco", "Rojo", "Verde", "Amarillo", "Azul"}, {"Ingles", "Sueco", "Danes", "Noruego", "Aleman"}, {"Agua", "Cerveza", "Leche", "Te", "Cafe"}, {"Pall Mall", "Dunhill", "Prince", "Bluemasters", "Blends"}, {"Perro", "Gato", "Pajaro", "Caballo", "Pez"}}
    Public columna As Integer
    Public objeto As Object
    Public a As Integer
 
    Sub llenar(ByVal fila As Integer, ByVal obj As Object)
        columna = 0
        While columna < 5
            obj.Items.Add(llenado(fila, columna))
            columna += 1
        End While
    End Sub
 
    Sub limpia(ByVal obj As Object)
        obj.Items.Clear()
    End Sub
 
    Private Sub cmbcasa1_GotFocus(sender As Object, e As EventArgs) Handles cmbcasa1.GotFocus
        objeto = cmbcasa1
        limpia(objeto)
        a = 0
        llenar(a, objeto)
    End Sub
 
    Private Sub cmbcasa2_GotFocus(sender As Object, e As EventArgs) Handles cmbcasa2.GotFocus
        objeto = cmbcasa2
        limpia(objeto)
        a = 0
        llenar(a, objeto)
    End Sub
 
    Private Sub cmbcasa3_GotFocus(sender As Object, e As EventArgs) Handles cmbcasa3.GotFocus
        objeto = cmbcasa3
        limpia(objeto)
        a = 0
        llenar(a, objeto)
    End Sub
 
    Private Sub cmbcasa4_GotFocus(sender As Object, e As EventArgs) Handles cmbcasa4.GotFocus
        objeto = cmbcasa4
        limpia(objeto)
        a = 0
        llenar(a, objeto)
    End Sub
 
    Private Sub cmbcasa5_GotFocus(sender As Object, e As EventArgs) Handles cmbcasa5.GotFocus
        objeto = cmbcasa5
        limpia(objeto)
        a = 0
        llenar(a, objeto)
    End Sub
End Class

Para ser mas precioso, que si en "cmbcasa1" elijo "rojo", en los de mas ya no se muestre ese Item al menos que cambie, y si a su vez en "cmbcasa2" elijo "azul", tanto "rojo" como "azul" no de muestren en los de mas, pero de una forma compacta sin usar tantas lineas de codigo, porque lo he hecho con "if" y con "select case" pero son muchas lineas de codigo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Eliminar Item seleccionado en otro Combobox

Publicado por Andres Leonardo (1798 intervenciones) el 15/10/2019 15:23:01
Pues lo que se me ocurre es

1
2
3
4
5
6
7
8
9
10
11
'A este procedimiento enviarle un parametro adicional  donde envies el elemento que no debe llenar 
 
 Sub llenar(ByVal fila As Integer, ByVal obj As Object, ItemX as string)
        columna = 0
        While columna < 5
        if itemX  <> llenado(fila,Columna) then   ' validar si el item es el que vas a llenar para omitirlo
            obj.Items.Add(llenado(fila, columna))
        end if
            columna += 1
        End While
    End Sub


Espero te ayude
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar