Verificare l´esistenza di un oggetto

Da Gambas-it.org - Wikipedia.

Analizzeremo il caso in cui si debba verificare l'esistenza di un oggetto su un Form, e l'esistenza di un oggetto a sé stante che non abbia genitore.


Verifica sul form principale

Per verificare l'esistenza di oggetto su un form, possiamo adottare tre modalità:


1a modalità

Public Sub Button1_Click()

 If Object.IsValid(FMain["Nome_dell'oggetto"]) Then

  Print "L'oggetto è presente nel Form !"

Endif

End


2a modalità:

Public Sub Button1_Click()

 Print IsNull(Me.Controls["Nome_dell'oggetto"])

End


3a modalità:

Public Sub Button1_Click()

 Dim obj As Object
  
  For Each obj In FMain.Children

    Print obj.Name

  Next

End


4a modalità

Public Sub Button1_Click()

 If Object.IsValid(FMain["nome_oggetto"]) Then

    Print "L'oggetto è presente nel Form !"

 Endif

End


Verifica di un oggetto a sé stante senza genitore

Poniamo il caso di un oggetto di tipo Window senza genitore, creato ad esempio così:

Private w As Window


Public Sub Form_Open()

 With w = New Window As "w"
   .W = 100
   .H = 200
   .X = 300
   .Y = 300  
   .Background = Color.Yellow
   .Show
 End With

End

Ne potremo verificare l'esistenza come segue:

Public sub Button1_Click()

' All'interno della funzione "Object.IsValid()" verrà inserita la variabile
' del tipo dell'oggetto a sé stante, del quale cui si vuole verificare l'esistenza:
  If Object.IsValid(w) Then
     Print "Oggetto esistente !"
  Endif

End