Newsgroup: it.comp.lang.visual-basic
Titolo: Passaggio di valori a Form

Come posso passare dei valori ad una form? Mi spiego. Ho una form aperta ed
utilizzo un valore. Come posso passare questo valore alla form senza
dichiararlo nel modulo principale?
andrea

 ha scritto nel messaggio
news:896na7$4jn$1...@nslave1.tin.it...


 wrote in message
95151493...@sen-srv.fastnet.it...

Oppure utilizzare un metodo, cioé dichiarando Public una Sub nel form :
Public Sub CosaFaccio(X as Integer)
X = X-1
me.show
end sub

 ha scritto nel messaggio
news:89836c$q3h$1...@fe1.cs.interbusiness.it...


 > end sub
--
Ciao.
Maurizio

 ha scritto

Ok, ok. Poi c'e', per esempio, il metodo Move che imposta proprieta':
dipende da quello che si vuol ottenere. Era il concetto di "correttezza"
dell'uso di una proprieta' rispetto ad un metodo che volevo mettere in
discussione... Puo' essere fuorviante questa rigidita'.
--
Ciao.
Maurizio

 Top(ByVal Y as Integer)
--
Ciao.
Maurizio

>(cosa che faresti comunque in linguaggi come C++).
Hai ragione ma io non dimenticherei il fatto che si tratta semplicemente di una comodità sintattica (molto comoda, direi).
Ovvero la proprieta' semplicemente ti permette di usare come una "variabile" la coppia di metodi Set/Get che scrivi.
A dire il vero questo puo' portare anche un po' di confusione perche' magari l'assegnazione di una proprieta' comporta anche un'azione implicita (vedi ad esempio impostando .Top che sposta la finestra).
Tra l'altro nel caso in esame la domanda non richiedeva anche la lettura del dato e io lo vedrei meglio come un passaggio di parametri ed in questo caso preferirei un metodo.
Ma ripeto che si tratta solo di "sintassi".
Antonio

 Left e il medoto Move. [...]".
Top e Left sono proprietà perchè sono sia a lettura che a scrittura. Move
invece è un metodo perchè non legge nulla, ma permette di eseguire un
"ordine".
Che poi anche il settaggio di Left e Top spostino l'oggetto è ininfluente,
si tratta semplicemente dell'opposto della lettura di una proprietà (cioè la
scrittura), che nel caso specifico attivano anche il metodo move.
Almeno così è come la vedo io.
Ciao
*Roby*

scrittura), che nel caso specifico attivano anche il metodo move.
Questo non c'entra, poichè una proprietà può anche essere di sola lettura
(ad. es. hWnd) o di sola scrittura (molto rare ma possibilissimo), così come
i metodi possono ritornare un valore (es. metodo Add di alcuni controlli
tipo il treeview): se definisci una function in una classe questa viene
vista come metodo e non come proprietà in lettura, come è giusto che sia:
nessuno farebbe mai una proprietà Item.Add = 5, ma piuttosto MyNewItem =
Item.Add(5).
La differenza sta solo nel fatto che un metodo (sub o function) compiono
un'azione, le proprietà (property) impostano o leggono un valore. Che poi
questa impostazione influisca su alcune caratteristiche come se fosse un
metodo non c'entra.
Basti pensare che uno potrebbe benissimo fare un metoto SetVisibility(True)
che ha lo stesso effetto di Visible = True, mentre non avrebbe molto senso
un SetVisibility = True o un Visible(True).
Ciao

 ha scritto
[...]
A me pare che la differenza sostanziale stia nel fatto che le proprieta'
sono routine Property e i metodi Sub o Function. La storia dell'azione o non
azione e tutto il resto mi sembra pressappochismo o banalizzazione.
--
Ciao.
Maurizio

 come combustibile per il camino.  >:-]
Scusami ma l'associazione libro/combustibile mi fa sempre venire i brividi
quindi non considero questa parte del tuo discorso.
--
Ciao.
Maurizio