Form Multipli

venerdì 15 luglio 2005 - 14.58

Ikin Profilo | Newbie

Dovrei utilizzare più form (3 per l'esattezza) in uno stesso progetto.

Come faccio a rendere globali a tutti e 3: variabili, costanti e Funzioni dichiarate in uno di questi?

Potrei avere un esempio pratico?

Grazie

Cteniza Profilo | Guru

Questo dipende dall'interazione che esiste tra le tre forms.
I dati comuni mettili in una classe globale (membri statici)
Nella form principale attivi e disattivi le altre due forms
Se ci sono dei dati che si devono passare provvedi a fare un dataset comune.
Per attivare le forms non devi far altro che scrivere:
Dim myForm As New Form2 (nome della classe che eredita da Windows.Forms.Form)
l'attivazione con:
myForm.Show()


Ikin Profilo | Newbie

Ciao e Grazie x i suggerimenti

la classe comune che intendi, la devo scrivere in un atro form (x esempio Classe.VB) oppure la "dichiaro" nel form principale?

dove posso trovare esempi pratici, intuitivi, e non troppo dispersivi di queste cose?



Cteniza Profilo | Guru

Secondo te a cosa serve l'opzione sul progetto "aggiungi classe?" se poi vuoi definirla all'interno della form?
Le regole consigliano di fare un file separato per ogni classe.
Poi virtualmente su un singolo file puoi mettere tutte le classi che vuoi.


alextyx Profilo | Expert

Oltre ai sempre ottimi suggerimenti dell'amico Cteniza, potresti anche considerare di rendere visibile la form a tutto il tuo progetto e, ovviamente, dichiarare public le procedure che intendi condividere. Se dichiari la form come public, in un modulo, indipendentemente da dove la istanzierai, essa sarà visibile e i suoi membri pubblici saranno accessibili. Probabilmente sto ridondando parlandoti di cose a te già note, ma ti ricordo che la riga:

Public F1 as Form1

E' la dichirazione e dovresti metterla in un modulo, mentre...

F1 = New Form1

Crea un'istanza, attraveso la chiamata al metodo costruttore (New) e questa puoi metterla anche altrove, come, ad esempio, nell'evento click di un pulsante. In quest'ultimo caso, potendo ripassare per lo stesso evento, devi ricordarti di distruggere la form creata quando non ti serve più o il tuo codice tenterà di costruire un esercito di Form! :-)
Buon lavoro!

Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5