Originariamente inviato da RAVALON
Prova a fare
Dim LabelNew as object
set LabelNew = new Label
Purtroppo questa cosa non la si può fare in VB6, ma solo in VB.NET.
Ci si può render conto di questa limitazione immediatamente, digitando in VB6 il codice da te riportato: Set LabelNew = New ...
Al posto dei puntini esce la lista completa di oggetti instanziabili (tecnologia intellisense) ma tra questi compaiono solamente:
- l'elenco dei form e delle classi definiti nel progetto
- classi di librerie caricate nella finestra "Riferimenti"
- la classe Collection
In VB6, l'unica maniera di creare instanze di componenti di base (come la Label) è questa:
codice:
'nel for esiste già una label chiamata Label1
'alla quale ho assegnato alla proprietà Index il valore 0
'per creare una nuova instanza di label1:
Load Label1(1)
'modifico le sue proprietà
Label1(1).Caption = "ciao"
Label1(1).Top = 0
Label1(1).Left = 40
Label1(1).Visible = True
'distruggo Label1(1)
Unload Label1(1)