Newsgroup: it.comp.lang.visual-basic
Titolo: Estendere e sostituire il controllo Form di Visual Basic

Salve!
Vorrei espandere ed usare nei miei progetti un
form derivato da quello standard di VB.
Avete idea del come si fa?
Andrea

 Avete idea del come si fa?
si usa 
vb.net
 :-)
Salutoni
Sergio

 wrote in message
news:b7ebvl$1849$1...@ID-173193.news.dfncis.de...

Mi introetto perchč...
non ho capito la domanda... e neppure la risposta :PPPPPPPPP
:)
di che state parlando?
Ettore Maronese, il Mes

 Sergio
Ciao
Andrea

 Ettore Maronese, il Mes
Ciao
Andrea

 Avrei dovuto specificare che intendevo in VB6 :-)
Naturalmente lo sapevo (e tu sapevi che sapevo) :-)
Che vb6 non implementi l'ereditarietà è una cosa a te già tristemente nota,
abituato come sei a lavorare in ambienti che la prevedono.
Pare che il modo per "estendere" la funzionalità della form, sia quella di
farsene una "standard" e salvarla come template.
Tratto da un famoso libro sul vb, copio e incollo questo passaggio, sperando
che ti sia utile, e nel contempo, sperando di non incorrere nelle ire
del''autore/editore del libro stesso:
Feel free to create new form templates when you need them. A form template
doesn't necessarily have to be a complex form with many controls on it. Even
an empty form with a group of properties carefully set can save you some
precious time. For example, see the Dialog Form template provided by Visual
Basic. To produce your custom form templates, you just have to create a
form, add any necessary controls and code, and then save it in the
\Template\Forms directory. (The complete path of Visual Basic's template
directory can be read and modified in the Environment tab of the Options
dialog box.)
hth
Salutoni
Sergio

 Solo che in 
VB.NET
 un evento Show esiste certamente mentre in VB6 no.
Non si tratta tanto di utilizzare l'evento show, quanto proprio la
possibilitą di creare una nuova classe che eredita da form e modificarla.
Tutte le volte che vorrai, le tue nuove form erediteranno da quest'ultima
invece che da quella originale.
Salutoni
Sergio

 Sergio
Ciao
Andrea

 Si, ma a me serviva per fargli spuntar fuori un evento Show :-)
Questo dettaglio non mi era balzato all'occhi, nel tuo post originale...
Mň rileggo....
No, non c'č...
Salutoni
Sergio

 Sergio
Ciao
Andrea

 Per quello spiegavo... :-)
Andrea, non sei un niubbio.
Sai anche tu che č meglio "confessare" subito tutto, invece che far
trapelare le cose a pezzettini.
Non puoi pretendere che noi si legga nella tua mente bacata (ah, no, scusa.
La tua era "prototipizzata").
Per gli altri particolari dobbiamo torturarti, o non ce ne sono piů?
Salutoni
Sergio

 Sergio
Ciao
Andrea

 ha scritto

e tu vuoi rifare il form base solo per sapere se e' stato mostrato o no ?
.visible non basta ?
per il resto, per quel nulla che so, mi sembra che sergio dica giusto.
se vuoi ereditare tutte le cosine dei form vb mi sa che devi usare .net, o
faticare alquanto.
ma probabilmente non ho capito nulla.
ciao

 no ?
credo, più che altro, che voglia fare qualcosa quando la form viene
visualizzata, non bastandogli l'evento initialize o load della stessa. ma
naturalmente gallina beccami se il nostro op si sbottona su quello che vuole
fare....
salutoni
sergio

 sergio
Ciao
Andrea

 Tratto da un famoso libro sul vb,
[CLIP]
Quella cosa è un form già fatto da riutilizzare... un template appunto...
che nulla ha a che fare con l'ereditarietà e nemmeno con il tirar fuori
l'evento show.  :(
Domanda per DeerBeer: Ma l'evento Activate non ti basta?
In qualsiasi caso, se vuoi cacciar fuori l'evento SHOW paro paro come viene
fuori dalla WindowsProcedure(), potresti provare a subclassare la Form, e
trappare l'evento che ti server.
Sul Sito Comune ci sono diversi esempi di SubClassing.
ps: ma in 
vb.net
 si può espandere tramite ereditarietà una form? che bello
:))
Ciao
Ettore Maronese, il Mes
Sito Comune: 
http://www.it-lang-vb.net

 wrote in message
news:b7ei3d$3rgd$1...@ID-170738.news.dfncis.de...

Se vuoi ti dico come faccio io in genere:
Creo una SUB publica nel form chiamata Apri().
Il form non lo carico, tanto appena richiamo la sub, il sistema la carica in
automatico.
A questo punto nella sub Apri() del form faccio implemento tutta la
inizializzazione.
Finita l'inizializzazione, faccio un Me.Show  (oppure Me.Show vbModal).
Se devo far tornare dei valori, la sub Apri() la faccio diventare una
Funzion Apri().
Unica accortezza č che se vuoi scaricare il form finito ti usarlo, devi fare
unload dopo aver richiamato Apri().
Un'altro becero metoro che mi ha fatto venire in mente p.a. (Pal) č quello
di metterti un bel Timer con cadenza 50mSec che continua a controllare se il
valore di  .Visible  č  variato. Se varia fai scatenare l'evento e magari
spegni il timer (.enable=false).
ps: Le risorse Timer sono contate nel sistema.. in tutto il sistema ne ne
possono allocare poche decine in tutto.


 esiste.
L'evento _Paint ti può aiutare ?
Bye, G.

esiste.
un uso accorto degli eventi generati dalla form, unitamente ad un metodo
che effettua i primi due passaggi (come suggeritoti da Ettore)  ti
permette di fare tutto questo.
Se proprio gli eventi della form non ti bastano, puoi sempre generarne
di nuovi :-)
Ciao,
Moreno
-- 
sirri at morenosoft dot com
Moreno Sirri VB Site - 
http://www.msvbsite.net
---------------------------------------------------------------------------
Le risposte alle tue domande le trovi sul Sito Comune di questo NewsGroup:
 
http://www.it-lang-vb.net
---------------------------------------------------------------------------

 Moreno
Ciao
Andrea

Sai come si fa questa cosa( se si puo' fare )?
allo stesso modo con cui definisci, generi, gestisci gli eventi in una
classe.
