Technics_addict
-
19 mars 2001 à 20:06
cs_ezus
Messages postés6Date d'inscriptionlundi 30 mars 2009StatutMembreDernière intervention26 mai 2011
-
29 avril 2009 à 11:51
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_ezus
Messages postés6Date d'inscriptionlundi 30 mars 2009StatutMembreDernière intervention26 mai 2011 29 avril 2009 à 11:51
Oui justement, je voulais réellement le fermer, au lieu de le cacher ^^
(j'ai commencé le VB y'a pas longtemps ^^')
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 29 avril 2009 à 10:53
Hide Me ?
euh, ba ça cache juste, ça, ca ferme pas
cs_ezus
Messages postés6Date d'inscriptionlundi 30 mars 2009StatutMembreDernière intervention26 mai 2011 29 avril 2009 à 10:49
Merci !
je cherchais justement comment quitter une Form complètement (autrement qu'avec un Hide Me) sans fermer le programme :p
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 10 mars 2008 à 09:42
si un test d'equivalence a faire entre deux références, utiliser Is :
For Each myForm In Forms
If myMainForm Is myForm Then Unload myForm
Next myForm
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 10 mars 2008 à 09:41
c'est quoi ce jeu que vous faites avec Xor ?
A part un Unload Me....
a la rigueur, une procédure qui permettrait de décharger toutes les Forms, ca, c'est utile, mais une en particulier, l'instruction Unload est là.
le tout est de faire les choses convenablement...
couper les timers, stopper les boucles, ne pas recharger la Form en masqué (ca va vite, suffit de faire référence à l'un de ses controles ; ca charge la feuille avec les propriétés par défault, mais en masqué...)
Sitemps
Messages postés1Date d'inscriptionmardi 5 décembre 2000StatutMembreDernière intervention 9 mars 2008 9 mars 2008 à 22:30
Merci pour ce code : j ai pu fermer proprement mon appli ,
mais j ai interverti un peu les mots pour que cela fonctionne
If myMainForm.hWnd Xor myForm.hWnd Then Unload myForm : Set myForm= nothing
soldier8514
Messages postés295Date d'inscriptionvendredi 20 décembre 2002StatutMembreDernière intervention24 janvier 20141 30 avril 2006 à 15:34
pierrele << c 1 approche interressante / on peut reajoutter : Set myForm= nothing
Sub QuitterMonProgVB(myMainForm As Form)
Dim myForm As VB.Form
' decharge les fenetres filles
For Each myForm In Forms
If myMainForm.hWnd Xor myForm.hWnd Then Set myForm= nothing:Unload myForm
Next myForm
' decharge la fenetre principale
Unload myMainForm
End
End Sub
pierrele
Messages postés7Date d'inscriptionmardi 10 décembre 2002StatutMembreDernière intervention26 juillet 2005 4 avril 2003 à 18:38
oui ok mais je ne critique rien man! (1-j'ai dis que c'etait jolie)
juste une parenthense pour les utilisateurs de vb6 (2-j'ai bien dis seulement depuis la runtime vb6) pire dire qu'un End suffisait
mais il vas de soit qu'utiliser le tableau de Form filles c'est plus dans les regles de l'art, et cela en inspirera certains.
moi le premier, et je me permet même de donner un coup de frais à ta boucle :-))))
Sub QuitterMonProgVB(myMainForm As Form)
Dim myForm As VB.Form
' decharge les fenetres filles
For Each myForm In Forms
If myMainForm.hWnd Xor myForm.hWnd Then Unload myForm
Next myForm
' decharge la fenetre principale
Unload myMainForm
End
End Sub
blq
Messages postés97Date d'inscriptionvendredi 22 octobre 1999StatutMembreDernière intervention13 juin 20161 4 avril 2003 à 17:13
Pour ceux qui "jugent" un code, pour juger quelquechose, voici ma réponse: J'ai mis ce code en ligne en 1999 (nous sommes en 2003...), à cette époque VB (sans doute pas la version 6) ne déchargeait pas correctement les ressources. Depuis M$ a certainement fait des progrés dans la livraison des ServicePack
Ensuite, vous pouvez être amené à executer des instructions lors de l'appel Unload (sauvegarde automatique de préférences par exemple) avant de fermer la fenêtre principale (mode MDI par exemple). Ce code peut éventuellement inspiré d'autres developpements.
Regardez cette modeste contribution comme un moyen une source permettant de proposer une amélioration ou de partager un autre code !
pierrele
Messages postés7Date d'inscriptionmardi 10 décembre 2002StatutMembreDernière intervention26 juillet 2005 4 avril 2003 à 16:58
sympa cette boucle, mais il me semble bien que dans la runtime de vb6 l'instruction End se charge bien de la desalocation propre des ressources gdi,instances com ou autres handle ouverts par le processus :-)
cs_SysteM
Messages postés73Date d'inscriptionsamedi 27 avril 2002StatutMembreDernière intervention14 juillet 2005 10 juin 2002 à 03:28
acidtoxik Unload Me décharge seulement la form d'ou il est appelé... non ?
et oui je suis un novice !
acidtoxik
Messages postés28Date d'inscriptiondimanche 12 mai 2002StatutMembreDernière intervention 2 janvier 2008 12 mai 2002 à 17:23
vous êtes dses novices ou koi ???? les deux lignes de code suivantes suffisent :
Unload Me
end
Réponse pour Technics_addict . End permet simplement d'arrêter le programme, mais peut ne pas libérer les ressources systèmes utilisées par le programme (d'autres fenêtre ouverte pas exemple).
ca ne suffit pas ??? mais ce code est suppert intéressant si par exemple on travail avec une MDI form et avec plusieurs fenêtre
c cool ton code
@+
koub
je trouve que ce prg est interessant car c different de l'instruction END qui met fin a tout le prog tandisque cette inst met fin a une fenetre particuliere qui peut rester en memoire
29 avril 2009 à 11:51
(j'ai commencé le VB y'a pas longtemps ^^')
29 avril 2009 à 10:53
euh, ba ça cache juste, ça, ca ferme pas
29 avril 2009 à 10:49
je cherchais justement comment quitter une Form complètement (autrement qu'avec un Hide Me) sans fermer le programme :p
10 mars 2008 à 09:42
For Each myForm In Forms
If myMainForm Is myForm Then Unload myForm
Next myForm
10 mars 2008 à 09:41
A part un Unload Me....
a la rigueur, une procédure qui permettrait de décharger toutes les Forms, ca, c'est utile, mais une en particulier, l'instruction Unload est là.
le tout est de faire les choses convenablement...
couper les timers, stopper les boucles, ne pas recharger la Form en masqué (ca va vite, suffit de faire référence à l'un de ses controles ; ca charge la feuille avec les propriétés par défault, mais en masqué...)
9 mars 2008 à 22:30
mais j ai interverti un peu les mots pour que cela fonctionne
If myMainForm.hWnd Xor myForm.hWnd Then Unload myForm : Set myForm= nothing
30 avril 2006 à 15:34
Sub QuitterMonProgVB(myMainForm As Form)
Dim myForm As VB.Form
' decharge les fenetres filles
For Each myForm In Forms
If myMainForm.hWnd Xor myForm.hWnd Then Set myForm= nothing:Unload myForm
Next myForm
' decharge la fenetre principale
Unload myMainForm
End
End Sub
4 avril 2003 à 18:38
juste une parenthense pour les utilisateurs de vb6 (2-j'ai bien dis seulement depuis la runtime vb6) pire dire qu'un End suffisait
mais il vas de soit qu'utiliser le tableau de Form filles c'est plus dans les regles de l'art, et cela en inspirera certains.
moi le premier, et je me permet même de donner un coup de frais à ta boucle :-))))
Sub QuitterMonProgVB(myMainForm As Form)
Dim myForm As VB.Form
' decharge les fenetres filles
For Each myForm In Forms
If myMainForm.hWnd Xor myForm.hWnd Then Unload myForm
Next myForm
' decharge la fenetre principale
Unload myMainForm
End
End Sub
4 avril 2003 à 17:13
Ensuite, vous pouvez être amené à executer des instructions lors de l'appel Unload (sauvegarde automatique de préférences par exemple) avant de fermer la fenêtre principale (mode MDI par exemple). Ce code peut éventuellement inspiré d'autres developpements.
Regardez cette modeste contribution comme un moyen une source permettant de proposer une amélioration ou de partager un autre code !
4 avril 2003 à 16:58
10 juin 2002 à 03:28
et oui je suis un novice !
12 mai 2002 à 17:23
Unload Me
end
et g des preuves
24 août 2001 à 18:11
Set Form1 = nothing
unload Form1
6 juin 2001 à 11:02
13 mai 2001 à 18:45
7 mai 2001 à 16:27
unload Me
end
ca ne suffit pas ??? mais ce code est suppert intéressant si par exemple on travail avec une MDI form et avec plusieurs fenêtre
c cool ton code
@+
koub
2 avril 2001 à 17:05
19 mars 2001 à 20:06