he creado una matriz de cotroles tipo button les he asignado eventos y todo pero con que instrucion recobro la posicion que posee dentro de la matriz
mi estructura es:
Buses(i,j)
| |||
recuperar la posicion he creado una matriz de cotroles tipo button les he asignado eventos y todo pero con que instrucion recobro la posicion que posee dentro de la matriz mi estructura es: Buses(i,j) |
| |||
Re: recuperar la posicion haber parece que no me explico bien o soy medio enrredado para explicar, la cos aes asi cree una matriz de controles especificamente de buttons les asigne el evento click, pero ahora lo que quiero es al hacer click en alguno de lso botones me retorne la posicion en la que se encuentra dentro de la matriz es posible o estoy perdinedo mi tiempo????? |
| |||
Re: recuperar la posicion cmo nadie sabe???? mmm solo quiero recuperar el indice del objeto creado debe haber alguna instruccion o al momento de crearlos debo asignarles algo no lo se... necesito una orientada de como hacerlo??? asi es com creo parte de la matriz Private Sub GeneraLC(ByVal ta As Integer, ByVal baño As String) Dim i, j As Integer Dim posx, posy As Integer Dim espacio As Integer = 55 '//espacio entre los botones en las filas Dim alto As Integer = 30 '// espacio enter los botones en las columnas If (ta = 42) Or (ta = 46) And (baño = "central") Then lc = Math.Round(((ta / 2) + 3) / 2) Else lc = ((ta / 2) + 2) / 2 End If For i = 3 To 4 For j = 1 To lc 'inicializacion de la matriz buses(i, j) = New Button posx = j * espacio posy = i * alto + 30 buses(i, j).Location = New System.Drawing.Point(posx, posy) buses(i, j).Size = New System.Drawing.Size(42, 27) buses(i, j).Image = Global.WindowsApplication1.My.Resources.Resources. Poltrona Me.Controls.Add(buses(i, j)) AddHandler buses(i, j).Click, AddressOf Evento_Click Next j Next i en algun lado debo asignar un indice.... o naque ver ya que solo quiero que en el Evento_Click creado para cada uno de los botones me retorne la posicion de que tiene dentro de la matriz ejemplo : (2,6) algo asi... |
| |||
Re: recuperar la posicion La solucion a esto para quien no la sepa era tan sencillo como que al momento de crear mi matriz asignar en mi caso la propiedad tag de mi boton y este valor asignarle los indices que corresponden pero na mas chachara y veanlo por ustedes mismos: Private Sub GeneraLC(ByVal ta As Integer, ByVal baño As String) Dim i, j, x, y As Integer Dim posx, posy As Integer Dim espacio As Integer = 55 '//espacio entre los botones en las filas Dim alto As Integer = 30 '// espacio enter los botones en las columnas If (ta = 42) Or (ta = 46) And (baño = "central") Then lc = Math.Round(((ta / 2) + 3) / 2) Else lc = ((ta / 2) + 2) / 2 End If For i = 3 To 4 For j = 1 To lc 'inicializacion de la matriz buses(i, j) = New Button x = i y = j posx = j * espacio posy = i * alto + 30 buses(i, j).Location = New System.Drawing.Point(posx, posy) buses(i, j).Size = New System.Drawing.Size(42, 27) buses(i, j).Image = Global.WindowsApplication1.My.Resources.Resources. Poltrona buses(i, j).Tag = x & "," & y Me.Controls.Add(buses(i, j)) AddHandler buses(i, j).Click, AddressOf Evento_Click Next j Next i End Sub des pues se rescata asi: Private Sub Evento_Click(ByVal sender As Object, ByVal e As System.EventArgs) 'Aqui esta el evento Dim ind As String MsgBox(sender.text) MsgBox(sender.tag) End Sub |