ID | Asunto | Fecha | Nick | |
57467 | Matriz de variables | 29/01/14 12:10 | jjthetower | | |
Hola a todos,
Soy nuevo por aqui pero este blog y estos foros me parecen interesantisimos.
Actualmente me estoy iniciando en la programación en Visual Basic 2008. Mi problema es que quiero generar una matriz de variables booleanas y que pueda llamar a cada elemento por un nombre en vez del indice. La matriz (entrada) contendrá variables booleanas (X0, X1, X0,....)
Para poner todos los valores a 1 haría For i = 0 To UBound(entrada) Entrada(i) = 1 next Y para querer leer por ejemplo el segundo valor quiero poder hacer: Textbox1.text = X1
Como podría hacer todo esto??
Muchas gracias |
|
ID | Asunto | Fecha | Nick | |
57481 | Re: Matriz de variables (Resp: 57467) | 10/02/14 21:34 | Pipe[hgjfkdls] | | |
Hola nuevo integrante, si trabajas sobre la plataforma .Net, te recomiendo usar el espacio de nombre (namespace)System.Collections.Generic, en este espacio de nombre encontraras una clase de objeto muy útil a la hora de etiquetar listas o matrices con cualquier tipo de objetos... Dictionary te da la posibilidad de hacer lo que tienes en mente...
un ejemplo:
Dictionary<string, bool> myList=new
Dictionary<string, bool>();
for(int i=0;i<10;i++)
{
myList.Add(String.Format("X{0}",i),true)
} En este pequeño código declaro un objeto tipo Dictionary que mediante una clave tipo string, etiqueta una variable tipo bolean (en este caso solo valores verdaderos), para acceder a los miembros guardados tendríamos lo siguiente:
for(int i=0;i<10;i++)
{
Console.WriteLine(myList["X{0}"]);
} Saludos,
Pipe [hgjfkdls] [Editado: Pipe[hgjfkdls], 10/02/2014 21:35:31]
Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias. |
|
ID | Asunto | Fecha | Nick | |
57542 | Re: Matriz de variables (Resp: 57467) | 18/03/14 19:44 | jjthetower | | |
Muchas gracias Pipe!!!
Tu información me ha sido muy valiosa. Disculpa no haberte contestado y agradecido antes pero he estado muy liado en el trabajo y he tenido un poco paralizado el proyecto. He realizado un pequeño proyecto en el cual existen 4 cajas de texto, un botón para inicializar la cadena y dos botones que cambian el estado de las dos primeras cajas de texto. El código es el siguiente:
Public Class Form1
Dim entradas As New Dictionary(Of String, Boolean)
Public Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If entradas("X0") = False Then entradas("X0") = True ElseIf entradas("X0") = True Then entradas("X0") = False End If
TextBox1.Text = entradas("X0") TextBox2.Text = entradas("X1")
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click If entradas("X1") = False Then entradas("X1") = True ElseIf entradas("X1") = True Then entradas("X1") = False End If
TextBox2.Text = entradas("X1") End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim i As Integer
For i = 0 To 10 entradas.Add(String.Format("X{0}", i), False)
Next
TextBox1.Text = entradas("X0") TextBox2.Text = entradas("X1") TextBox3.Text = entradas("X2") TextBox4.Text = entradas("X3") End Sub End Class
Si tienes alguna duda ya me lo indicaras.
Un saludo y muchas gracias de nuevo
Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias. |
|
ID | Asunto | Fecha | Nick | |
57555 | Re: Matriz de variables (Resp: 57467) | 30/03/14 10:06 | jjthetower | | |
Buenos días,
Ya he probado las instrucciones que me indicaste y funcionan perfectamente. El único problema es que tengo varios subprocesos con la instrucción Background Worker y en alguna ocasión la colección me da un error de que ha sido modificada. Os puedo enviar una imagen con el error.
Sabéis como se puede evitar que de ese error?
Muchas gracias
Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias. |