Lancer form en invisible VB6

Résolu
KoXo Messages postés 4 Date d'inscription vendredi 26 mai 2006 Statut Membre Dernière intervention 13 septembre 2006 - 13 sept. 2006 à 15:04
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 - 13 sept. 2006 à 16:43
Bonjours
Je voudrais juste savoir si il y avait une petite ligne de code qui permettrait de lancer ma form1 sans quel soit visible sur le bureau

Ou alors avec un timer mes je debute alors j'ai beaucoup de mal

15 réponses

econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
13 sept. 2006 à 15:29
L'erreur est dans le 1.

Private Sub form<strike>1</strike>_load()
Me.Hide
End Sub

Quel que soit le nom de la form, le code est celui-ci :


Private SubForm<strike></strike>_Load()

Me.Hide
' le reste ici
End Sub

Manu
--------------------------------------------------------------------------------------------
Avant de poster un message, n'oubliez pas de consulter le reglement.
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
13 sept. 2006 à 15:31
ton erreur est dûe au fait que tu utilises un procédure qui n'est pas un évènement de ta Form.
double-click dessus et apparaîtra automatiquement ces lignes :

Private Sub Form_load()

End Sub

là tu y mettras ton Me.Hide

(la différence si tu ne l'as pas vue est le 1 de Form1 qui ne doit pas exister.)
++
<hr size="2" width="100%" />Prenez un instant pour répondre à ce sondage svp
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
13 sept. 2006 à 15:07
TaForm.Load chargera ta feuille sans l'affichée.

TaForm.Show, affichera ta feuille et si nécessaire la chargera par la même occasion.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
13 sept. 2006 à 15:13
salut,
la solution de Casy fonctionne uniquement si taForm1 n'est pas la première à s'ouvrir (ce qui m'étonnerait vu la question) ; genre appelée d'un Main()

tu dois alors juste faire Me.Hide au début de ton Form_Load()

++
<hr size="2" width="100%" />Prenez un instant pour répondre à ce sondage svp
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
KoXo Messages postés 4 Date d'inscription vendredi 26 mai 2006 Statut Membre Dernière intervention 13 septembre 2006
13 sept. 2006 à 15:23
Merci de repondre si vite
Oui PCPT c'est la 1er form que j'essaye de fair disparaitre

Mais sa marche pas :s voici la ligne que j'ai mis :

Private Sub form1_load()
Me.Hide

End Sub

Ou est mon erreur ??
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
13 sept. 2006 à 15:25
Rectificatif pour casy :




<strike>
TaForm.Load
</strike>





Load TaForm








Manu


--------------------------------------------------------------------------------------------
Avant de poster un message, n'oubliez pas de consulter le reglement.
0
Julien237 Messages postés 883 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 3 mars 2009 7
13 sept. 2006 à 15:30
Je pense que lorsque le premier évènement form_load se produit, la form n'est pas encore visible (je pense cela notamment parce que certain codes mettent un form.show dans le form_load du form principal...) et que donc il y'a une instruction form.show dans la classe form qui se produit après le form_load... Essaye peut-être de mettre le form.hide dans form_GotFocus ?
Ou bien form.visible = false ?

Au pire essaye de faire une boucle style

While form.visible = false
doevents 'On attend que l'évènement externe montre le form
wend
form.hide

Désolé de pas pouvoir être plus sûr, j'ai plus vb6...

Julien.
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
13 sept. 2006 à 15:34
tous au taquet dites-donc ^^
0
Julien237 Messages postés 883 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 3 mars 2009 7
13 sept. 2006 à 15:35
J'ai dû extrapoler un peu vite lol :p

Julien.
0
KoXo Messages postés 4 Date d'inscription vendredi 26 mai 2006 Statut Membre Dernière intervention 13 septembre 2006
13 sept. 2006 à 15:37
Grands merci aux admins sa marche

Super comme forum et des reponse clair tres tres rapidement ^^
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
13 sept. 2006 à 15:44
Julien je confirme,
 
Normalement l'évènement Form_Load doit intervenir avant que la form soit affiché. Il intervient d'ailleurs si on fait un <strike>Form.Load</strike> pardon un Load Form1 alors que la Form ne sera pas affichée.

Dailleurs l'ordre des évènements est le suivant

Form_Initialize
Form_Load      ' Avant affichage
Form_Activate   ' Après Affichage
Form_GotFocus

Les deux derniers se reproduisant chaque fois que le form reprend le focus

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
13 sept. 2006 à 16:09
Activate n'a lieu qu'une seule fois, au premier affichage!

<hr size="2" width="100%" />Prenez un instant pour répondre à ce sondage svp
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
13 sept. 2006 à 16:18
Non PCPT, Activate a lieu chaque fois que la feuille reprend le focus mais uniquement au sein de la même application. GotFocus a lieu normalement aussi quand c'est une autre application qui le perd.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
13 sept. 2006 à 16:39
l'un comme l'autre ne signalent leur focus qu'entre leur Form.
fait le test sur une seule Form, ces 2 évènements ne se produiront qu'une seule et unique fois

++
<hr size="2" width="100%" />Prenez un instant pour répondre à ce sondage svp
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
13 sept. 2006 à 16:43
Evidemment, ce qui est logique.

Pour qu'une form prenne le focus, il faut d'abords qu'elle le perde, donc qu'il l'aille à une autre form du projet. Si évidement c'est la seule form du projet, elle ne prendra le focus qu'une seule fois, à l'affichage.

Mais dans le cas d'un projet à plusieurs forms, il faut savoir que activate comme gotfocus sont générés chaque fois que la form reprend le focus.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
Rejoignez-nous