savoir qu'un form est deja loader ????

savoir qu'un form est deja loader ???? - VB/VBA/VBS - Programmation

Marsh Posté le 20-02-2003 à 14:52:15    

voila je dois faire une applique qui se charge dynamiquement en fonction de certain param  

Code :
  1. set tableau_de_form(X) = new ma_form


bon sa sa va mais le prob C ke l'utilisateur choisi le num X => si une form a deja ete loader en X comment je le sais ou alors
est ce que je peut etre sur que si reload desus l'ancienne est bien liberee de la memoire ???
 
merci


---------------
la théorie c quant tout dois fonctionner mais rien ne marche                                 la pratique c quant tout marche mais personne ne c pourquoi                           ici on fais un bon compromis rien ne marche et personne ne c pourquoi :D
Reply

Marsh Posté le 20-02-2003 à 14:52:15   

Reply

Marsh Posté le 20-02-2003 à 15:38:43    

erwan_oops a écrit :

voila je dois faire une applique qui se charge dynamiquement en fonction de certain param  

Code :
  1. set tableau_de_form(X) = new ma_form


bon sa sa va mais le prob C ke l'utilisateur choisi le num X => si une form a deja ete loader en X comment je le sais ou alors
est ce que je peut etre sur que si reload desus l'ancienne est bien liberee de la memoire ???
 
merci


Tout dépend comme est ton App. tu utilise quoi les feuilles MDI ou non ? personellement j'ai une idée, mais elle est vraiment barabare.
 
Mon idée était de créer un tableau dynamique, visible de n'impote quel feuilles de ton projeyt. Dés qu'une feuille, était chargé - dans l'évement load - tu y mettais une valeur, propre à la feuille dans ce tableau. Dés que la feuille, était fermé - évenement unload -  tu faisais en sorte, de supprimer la case du tableau, en remontant toutes les cases inférieur...
 
Ensuite, interroger un tableau il y a pas plus simple.
 
C'est une méthode barbare. Sinon, je crois que tu peux savoir, le nombre de feuille ouverte, mais j'en suis pas certains...

Reply

Marsh Posté le 20-02-2003 à 15:43:36    

C'est donc bien dans une mdi et j'avais aussi penser a un var global qui memoirise se qui est ouvert ou pas mais se n'est pas tres "propre" donc si qq'un as une autre idée je suis preneur
 
mais merci quand même cvb


---------------
la théorie c quant tout dois fonctionner mais rien ne marche                                 la pratique c quant tout marche mais personne ne c pourquoi                           ici on fais un bon compromis rien ne marche et personne ne c pourquoi :D
Reply

Marsh Posté le 20-02-2003 à 15:45:57    

erwan_oops a écrit :

C'est donc bien dans une mdi et j'avais aussi penser a un var global qui memoirise se qui est ouvert ou pas mais se n'est pas tres "propre" donc si qq'un as une autre idée je suis preneur
 
mais merci quand même cvb


 
je sais, c'est pour cette raison que je l'ai apellé "barbare".  
@+
 :hello:

Reply

Marsh Posté le 20-02-2003 à 15:46:18    

Le coup de la variable, c'est pas con.
 
Tu déclares un booléen dans ta form, et tu la positionnes à True dans la fonction Form_Load, puis à False dans le Unload (si la variable Cancel vaut toujours zéro bien entendu).
 
Ensuite, tu peux l'interroger depuis l'extérieur (ou l'intérieur) pour savoir si ta form est toujours bien loadée ou non.  J'ai jamais vu une propriété propre à la form qui me permettrait de savoir si elle est loadée ou non (en fait j'en ai jamais eu besoin jusqu'à présent).


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 20-02-2003 à 15:47:48    

drasche a écrit :

Le coup de la variable, c'est pas con.
 
Tu déclares un booléen dans ta form, et tu la positionnes à True dans la fonction Form_Load, puis à False dans le Unload (si la variable Cancel vaut toujours zéro bien entendu).
 
Ensuite, tu peux l'interroger depuis l'extérieur (ou l'intérieur) pour savoir si ta form est toujours bien loadée ou non.  J'ai jamais vu une propriété propre à la form qui me permettrait de savoir si elle est loadée ou non (en fait j'en ai jamais eu besoin jusqu'à présent).


 
je ne crois pas, les form, peuvent renvoyer via des variables public. A partir de là, il faut essayer de construire quelques chose !

Reply

Marsh Posté le 20-02-2003 à 15:49:01    

D'un autre côté je relis le premier post.... pour détruire une form, tu l'unloades d'abord (de l'intérieur ou de l'extérieur) puis Set TaForm = Nothing de manière à la détruire complètement.
 
Par après tu fais un test style:
 


If TaForm Is Nothing Then


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 20-02-2003 à 15:51:46    

drasche a écrit :

D'un autre côté je relis le premier post.... pour détruire une form, tu l'unloades d'abord (de l'intérieur ou de l'extérieur) puis Set TaForm = Nothing de manière à la détruire complètement.
 
Par après tu fais un test style:
 


If TaForm Is Nothing Then



il peut avoir plusieurs feuilles ouvertes, c'est justement la raison pour laqsuelle, je lui demandais si c'était du MDI...
 
ta méthode ne fonctionnera plus, si plusieurs feuilles sont ouvertes, seul le coup des variables public sont possible...A ma connaissance j'en connais pas d'autre méhodes.

Reply

Marsh Posté le 20-02-2003 à 15:52:13    

C'est bon j'ai trouver  
If tableau_de_form(X) Is Nothing Then...
 
et apres je peut encore la cherhcer dans la collection forms par sa caption + tag


---------------
la théorie c quant tout dois fonctionner mais rien ne marche                                 la pratique c quant tout marche mais personne ne c pourquoi                           ici on fais un bon compromis rien ne marche et personne ne c pourquoi :D
Reply

Marsh Posté le 20-02-2003 à 15:54:24    

erwan_oops a écrit :

C'est bon j'ai trouver  
If tableau_de_form(X) Is Nothing Then...
 
et apres je peut encore la cherhcer dans la collection forms par sa caption + tag  


 
Si tu as plusieurs feuille d'ouvertes en même temps, cette méthode ne fonctionnera pas...maintenant si tu n'as qu'une feuille d'ouverte, tu interroge la valeur "tag", oui, tu peux !

Reply

Marsh Posté le 20-02-2003 à 15:54:24   

Reply

Marsh Posté le 20-02-2003 à 16:05:24    

oui mais justement le tag sera chez moi un compteur d'ouverture :D


---------------
la théorie c quant tout dois fonctionner mais rien ne marche                                 la pratique c quant tout marche mais personne ne c pourquoi                           ici on fais un bon compromis rien ne marche et personne ne c pourquoi :D
Reply

Marsh Posté le 20-02-2003 à 16:12:47    

erwan_oops a écrit :

oui mais justement le tag sera chez moi un compteur d'ouverture :D  


 
je comprend pas trés bien, tu prend les tag de quel feuille, des feuilles que tu ouvre ou de celle du MDI ? Explique moi, comment tu fais pour savoir si tel ou tel feuille est ouverte - surtout si tu en as un dizaine d'ouverte - la méthode "tag", va te claquer entre les doigts, car pour l'utiliser, il faut connaitre le nom de la feuille. Si tu prend le tag de la feuille MDI se n'est pas rétroactif, ce n'est pas une mémoire comme un tableau ou une liste...
 
c'est pour ca que je te dis que ta méthode tag, ne fonctionnera pas si plusieurs feuilles sont ouverte. Le méthode, il n'y en pas cinquante. C'est à partir de la feuille MDI, que tu dois savoir quel feuilles sont ouverte pour éventuellement les fermés...tu dois travailler en dyamique avec des variables public...

Reply

Marsh Posté le 20-02-2003 à 16:16:09    

je viens de faire un chtit test, la lecture de la propriété Tag force le Load de la form :/


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 20-02-2003 à 16:20:19    

drasche a écrit :

je viens de faire un chtit test, la lecture de la propriété Tag force le Load de la form :/


 
oui, c'est kler, donc non utilisable. le seul moyen c'est d'utiliser des variables...peut importe le style (tableau dynamique, varriable dyamique ect...)

Reply

Marsh Posté le 20-02-2003 à 16:29:40    

donc je test avec if not ... is nothing
dans se cas que je test son tag que j'ai initialiser au load de la form => je ne test pas le form non loader => je ne les load pas


---------------
la théorie c quant tout dois fonctionner mais rien ne marche                                 la pratique c quant tout marche mais personne ne c pourquoi                           ici on fais un bon compromis rien ne marche et personne ne c pourquoi :D
Reply

Marsh Posté le 20-02-2003 à 16:31:04    

comment vas-tu savoir que la form est pas loadée?


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 20-02-2003 à 16:31:44    

drasche a écrit :

comment vas-tu savoir que la form est pas loadée?


 
il ne peut le savoir !

Reply

Marsh Posté le 20-02-2003 à 16:36:20    

cvb a écrit :


 
il ne peut le savoir !  


spour ça que je posais la question ;)


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 20-02-2003 à 16:41:49    

parceque une fois que j'ai passe en revue toute met form loadée je ce les quel ne le sont pas


---------------
la théorie c quant tout dois fonctionner mais rien ne marche                                 la pratique c quant tout marche mais personne ne c pourquoi                           ici on fais un bon compromis rien ne marche et personne ne c pourquoi :D
Reply

Marsh Posté le 20-02-2003 à 16:47:06    

erwan_oops a écrit :

parceque une fois que j'ai passe en revue toute met form loadée je ce les quel ne le sont pas

tu m'escuse, mais je te suis pas. Si je comprends bien ce que tu me dis, tu va passer en revue -pour voir si elles sont chargés - toute les feuilles, à travers la propriété "tag", c'est bien ca ? si c'est le cas, tu as tout faux, puisque pour interroger cette valeur depuis la feuille principal MDI il te faut impérativement le noms des feuilles ! ce que tu n'as pas au départ ! En plus cf. le post de "drasche", disant que l'interrogation de la valeu "tag" remettait la feuille au premier plan. Si je ne me trompe pastu ne les as pas ses noms la, non ?  
 

Reply

Marsh Posté le 20-02-2003 à 16:48:29    

euh non entre loader la feuille et la remettre au premier plan, il y a une sacrée marge :non:
 
En fait ça me fait peur sa gestion de feuilles [:totoz]


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 20-02-2003 à 16:52:22    

non mes feuille loader même si je test le tag ne doivent pas passer ua 1 er plan  et soit par mon tableaus pour conaitre mias nu mde form loader ou pas ,puis par la collection forms qui contient toutes les forms loadée de mon aplic


---------------
la théorie c quant tout dois fonctionner mais rien ne marche                                 la pratique c quant tout marche mais personne ne c pourquoi                           ici on fais un bon compromis rien ne marche et personne ne c pourquoi :D
Reply

Marsh Posté le 20-02-2003 à 16:52:26    

drasche a écrit :

euh non entre loader la feuille et la remettre au premier plan, il y a une sacrée marge :non:
 
En fait ça me fait peur sa gestion de feuilles [:totoz]


 
auant pour moi !  :jap: personellement, je ne le suis plus, il savoir si ses feuilles sont chargés depuis la feuilles MDI, à travers la propriété "tag" des feuilles. Seul soucis pour ca,il faut les noms des feuilles au départ...

Reply

Marsh Posté le 20-02-2003 à 16:53:31    

au fait sa me fait peur aussi parceque en plus ce des venetre san bord => je dois gereer leur position et leur contenu est dynamique


Message édité par erwan_oops le 20-02-2003 à 16:53:58

---------------
la théorie c quant tout dois fonctionner mais rien ne marche                                 la pratique c quant tout marche mais personne ne c pourquoi                           ici on fais un bon compromis rien ne marche et personne ne c pourquoi :D
Reply

Marsh Posté le 20-02-2003 à 16:57:26    

erwan_oops a écrit :

au fait sa me fait peur aussi parceque en plus ce des venetre san bord => je dois gereer leur position et leur contenu est dynamique


 
je te rajoute une chose en plus, pense a la gestion de la résolution d'écran, surtout pour redimensionner tes contrôles en fonction, de la résolution...VB ne le fais pas tous seul, il faut le faire soit même...
 
Allez bon courage, perso, en cinq ans de VB, il m'as vraiment fait chier, maintenant j'ai arréte depuis 12 mois  :D  
 
Sinon, un trés bon site que beaucoup connaissent : www.vbfrance.com

Reply

Marsh Posté le 20-02-2003 à 16:58:29    

bon je v esyer de faire clair  
ce que je devait faire et qu ia l'air de fonction (e ntout cas pour l'instant) c savoir quand un type de forms est loader ou pas car au 1 er appelle je dois faire des initialisation particuliere et 2emment sa voir dans mon tableau qui me sert a "representer" le font de ma mdi sa voir quelle element etait où  => je test par mon tableaux pour savoir ou c loader et par mes tag + caption pour sa voir qui


---------------
la théorie c quant tout dois fonctionner mais rien ne marche                                 la pratique c quant tout marche mais personne ne c pourquoi                           ici on fais un bon compromis rien ne marche et personne ne c pourquoi :D
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed