Oppure

Loading
22/10/09 9:18
artel
saluti.
all'interno di una routine di form1 ho una chiamata di apertura di un'altra form (form2) la quale una volta chiusa tramite una variabile Global RITORNO mi restituice un risultato RITORNO=true o false.

sia form1 che form 2 sono child

Prima non usavo mdi form e aprendo la seconda form com form2.show 1 spostavo ogni evento sulla form2 e il codice in form1 dove avveniva la chiamta di form2 si bloccava fino a che non chiudevo la form2 avendo così il valore della variabile RITORNO e di conseguenza indirizzare con if RITORNO= true o false la restante parte di codice della routine della form1.
Ora con l'utilizzo di mdi_form mi apre la form2 ma esegue comunque tutto il codice con RITORNO = Empty.

non sò se sono stato chiaro, posto un pò di codice

'''codice in un modulo
global RITORNO as boolean


'''codice in form 1
privete sub Apri_MsgBox()
''''''''form2.show 1 'parte del codice prima di usare le mdi form
form2.show 'usando le mdi form
if RITORNO=true then

else

end if
end sub


''''codice in form 2
Private Sub Command1_Click
RITORNO=true
end sub




aaa
22/10/09 9:47
theprogrammer
In genere, le form a scelta obbligatoria si attivano con

Form.Show vbModal

ma se parliamo di due MDI Child, allora dovresti avere un errore perche' questo tipo di comportamento non e' consentito.
aaa
22/10/09 10:07
artel
infatti non è possibile utilizzarlo e di conseguenza mi succede quello sopradescrittto.
Esiste una soluzione oppure l'unica soluzione è quella di spostare la parte di codice
if RITORNO=true then
else
end if

direttamente sul form2 ?
aaa
22/10/09 10:24
theprogrammer
Il problema e' piu' "architetturale" ... i form child (per loro natura) sono tutti uguali e non ha molto senso chiamare funzioni tra loro ...

Forse e' meglio che descrivi un po' piu' dettagliatamente quello che stai facendo (anche il perche' hai deciso di farlo in quel modo) ...
aaa