https://foro.gambas-es.org/viewtopic.php?f=1&t=8123&p=48947#p48947
-----------------------------------
Shell
Viernes, 26 Junio 2020, 13:56

Re: Eliminar Un Objeto De Su Contenedor Padre
-----------------------------------
Se puede añadir un array global tal que este:

[code linenumbers=false syntax=gambas]
...
Private pulsados As New Boolean[]
...
[/code]

En el form_open() cambiar el tamaño de este según el número de botones alto x ancho

[code linenumbers=false syntax=gambas]

 pulsados.Resize(BOTONESXANCHO * BOTONESXALTO)

[/code]

Y ademas evita un nuevo recorrido si ya se ha pulsado el botón..

[code linenumbers=false syntax=gambas]
Public Sub Observador_Click()
  
  Dim unboton As Button
  Dim indice As Integer
  
  indice = Last.tag
  
  If pulsados[indice] = False Then
    
    For Each unboton In Panel1.Children     
      'Eliminar el botón del panel
      'If unboton.tag = indice Then unboton.Delete            
      
      ' ¿ Y si quieres hacerlo invisible ?. 
      ' Si usas la propiedad visible, desparece de la vista del contenedor padre pero no evita que se redistribuyen los "niños"
      ' Entonces...y si lo hacemos invisible de otra forma...B-D
      
      If unboton.Tag = indice Then
        pulsados[unboton.Tag] = True
        With unboton
          .Border = Border.None          
          .Text = ""
        End With      
      Endif    
    Next  
  Endif
  
End
[/code]


Podía haber usado en la comprobación..

[code linenumbers=false syntax=gambas]
 If Not pulsados[indice] Then
[/code]


Saludos


