Oppure

Loading
11/04/12 21:43
peppino84
ciao ragazzi,
è vero ... ammetto che questa soluzione ammazza la programmazione, è una bestemmia e l'ultima cosa che voglio fare è proprio questa ...

il fatto è che l'unload l'ho provato ma evidentemente non so usarlo ...
ho fatto diversi tentativi

quando inserisco gli unload in tutti i form, anche se chiudo tutti i form resta comunque l'applicazione exe in esecuzione

perchè mi risulta cosi complicato???
è evidente che qualche ciclo gira ancora ... magari qualcuno dei form nascosti ... in effetti il programmino è un pochino incasinato... ma non mi è semplice riordinarlo ora che funziona cosi bene ...

vorrei semplicemente che gli unload avvengano quando chiudo i rispettivi form con la crocetta rossa ... e che se tutti i form vengono chiusi con la crocetta rossa allora si chiude definitivamente l'applicazione (globale)...

domanda: dove pongo gli unload??

ciao cari
aaa
13/04/12 11:22
ampeg
l'unload del form va messo preferibilmente come ultima istruzione di un blocco di codice, se non lo è va verificato che dopo aver richiamato il metodo non vi sia un riferimento a qualche oggetto del form appena scaricato o se non addirittura al form stesso, possono verificarsi delle situazioni ricorsive

comunque, a meno che sia un problema di oggetti COM, OCX di terze parti, generalmente basta fare un debug riga per riga per trovare l'intoppo

Ultima modifica effettuata da ampeg 13/04/12 11:32
aaa
13/04/12 12:01
ampeg
comunque se non è stato fatto, come prima cosa proverei a mettere un breakpoint su tutti gli eventi dei form e vedere cosa succede quando li chiudo, ovvero verificare se eventi come il form-load o form-activate vengono richiamati quando non dovrebbero
aaa
13/04/12 13:52
GrG
in teoria, anche chiudendo ogni form con la crocetta (senza usare nessun unload) si dovrebbe chiudere l'intero processo senza problemi..

A questo punto credo sia più una questione di cicli che non vengono terminati, o forse come suggeriva nessuno all'inizio non gestisci bene excel...
aaa
13/04/12 13:54
Se ci fai scaricare tutto il progetto zippato, vedo quale può essere il problema ...
13/04/12 19:24
ampeg
ho provato il programma e in effetti il processo non termina ma solo se carico il secondo form che si carica cliccando su avanti, come carichi questo secondo form?
hai provato a caricare il secondo form impostandolo come owner di quello principale ?
in questo modo il form principale diventa proprietario del secondario e chiudendo quello principale si chiude anche quello secondario

ovvero
[nome_secondo_form].Show ,  Me


oppure in modo modale ?

ovvero
[nome_secondo_form].Show vbModal


aaa
13/04/12 20:04
ampeg
ho provato a monitorare il processo con il tool Microsoft Spy ++ di visualstudio 6 e in effetti un form secondario rimane caricato

vedi in allegato l'immagine dello screenshot, immagine presa dopo che i form sono stati chiusi e dopo aver fatto il refresh

quindi il problema è che non viene scaricato correttamente
Ultima modifica effettuata da ampeg 13/04/12 20:06
aaa
14/04/12 14:53
peppino84
sono certo che il problema è connesso al caricamento dei dati nel foglio di calcolo integrato....
... non vorrei che chiudendo il principale si chiuda tutto; non è necessario che questo resti aperto quando il secondo è in esecuzione, in effetti il primo serve solo a reindirizzare verso il secondo o il terzo che sono quelli effettivamente operativi

vi mando la versione short
so che il codice è impostato in maniera poco elegante (dichiarazioni ecc) ... ma non sono un esperto ... pertanto vi pregherei di non farmi una pezza sul fronte sintassi... al momento il problema è la chiusura dell'applicazione...


dl.dropbox.com/u/25272953/…

grazie a tutti
aaa