CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Forum
  • Accueil
  • Actus
  • Tests
  • Vidéos
  • Images
  • Soluces
  • Forum
Liste des sujets

Enigme,Charade,....

jopfleger
jopfleger
Niveau 10
13 août 2004 à 10:50:19

Pete, ton souci est relativement simple à résoudre.
Tu connais le mode " modal"?

irvy
irvy
Niveau 10
13 août 2004 à 10:50:26

désolé Pete je voi vraiment pas...

Pete
Pete
Niveau 10
13 août 2004 à 10:52:15

Ma question s´adressait à Jop, je me doute que les autres ne peuvent y répondre :)

Jop :d) Non je connais pas.

irvy
irvy
Niveau 10
13 août 2004 à 10:53:22

ah ok.

jopfleger
jopfleger
Niveau 10
13 août 2004 à 10:56:01

Pour les raisons énumérées ci-dessous, il est préférable d´éviter de cacher et d´afficher une feuille modale dans le même événement. Les résultats obtenussoit une erreur " Espace pile insuffisant", soit aucun événement généréne sont pas ceux attendus, et ce par conception.

Le problème est lié à une condition d´espace insuffisant dans la pile, bien que vous ne soyez pas réellement à court d´espace. La raison pour laquelle se produit la condition d´espace insuffisant dans la pile est due à une limitation dans la façon dont Visual Basic gère le fait d´afficher et de cacher les feuilles modales dans le même événement. Avant l´appel d´un événement, Visual Basic définit un indicateur de l´état modal de la feuille active et ne redéfinit pas cet indicateur avant que l´événement soit achevé. Ainsi, si vous cachez la feuille ( modale) active dans un événement, Visual Basic considère toujours la feuille comme modale, bien que le fait de la cacher doive la rendre non modale.

Lorsque vous cachez une feuille, le code immédiatement à la suite de l´instruction FormX.Show 1 devrait s´exécuter, mais ce n´est pas le cas. Visual Basic exécute le code restant de l´événement puis, une fois l´événement achevé, vérifie l´état modal de la feuille et exécute le code qui suit l´instruction FormX.Show 1. Il n´exécute ce code que si aucune autre feuille modale n´est affichée. Voici ci-dessous un exemple de code considérant que votre projet se compose de deux feuilles, Form1 et Form2.

´ Code pour Form1.
Private Sub Form_Click ( )
Form2.Show 1
Debug.Print " Form2 n´est pas modale"
End Sub

´ Code pour Form2.
Private Sub Form_Click ( )
Debug.Print " Cache Form2"
Form2.Hide
Debug.Print " Form2 est cachée"
End Sub

Exécutez le code ci-dessus, cliquez sur Form1 puis sur Form2. Dans la fenêtre Débogage, vous voyez apparaître :

Cache Form2
Form2 est cachée
< The Form_Click event of Form2 completes>
Form2 n´est pas modale
< The Form_Click event of Form1 completes>

Ce scénario démontre que Visual Basic exécute le code restant dans Form_Click de Form2 avant d´exécuter le code suivant l´instruction Form2.Show 1. En effet, si la feuille était considérée comme non modale immédiatement après l´instruction Form2.Hide, nous aurions :

Cache Form2
Form2 n´est pas modale
< The Form_Click event of Form1 completes>
Form2 est cachée
< The Form_Click event of Form2 completes>

Dans ce cas, Visual Basic affiche toujours la feuille modale suivante avant de considérer que la feuille en cours n´est pas modale. Chaque fois que vous cliquez sur le bouton de commande, une feuille modale s´affiche et Visual Basic n´a aucun moyen d´achever l´événement où la feuille était affichée comme modale. Chaque clic ajoute un nouvel appel à un événement qui ne peut pas s´achever et vous obtenez des appels récursifs à chaque événement.
Pour contourner ce problème, vous devez séparer l´instruction FormX.Hide pour la feuille en cours et l´instruction FormX.Show 1 pour la nouvelle feuille dans des événements distincts. Par exemple, vous pouvez cacher la feuille en cours dans l´événement Form_Click ( comme c´est déjà le cas), activer une minuterie, puis afficher la nouvelle feuille modale à partir de l´événement Timer. L´utilisation de ce schéma entraîne les événements suivants :

1. La feuille en cours est cachée.
2. La minuterie est activée pendant 1 milliseconde.
3. L´événement Click s´achève. Visual Basic reconnaît désormais que la feuille n´est plus modale.
4. Le code qui suit l´instruction FormX.Show 1 pour la feuille en cours s´achève et l´événement où la feuille était affichée prend fin également, mettant fin à la récursivité.
5. L´événement Timer est déclenché.
6. La nouvelle feuille est affichée comme modale.
7. La minuterie est désactivée pour éviter des événements supplémentaires.

jopfleger
jopfleger
Niveau 10
13 août 2004 à 10:57:04

Pete, ce long charabia est peut-être ardu.
Et si tu m´envoyais une copie ( édulcorée) du projet?

Pete
Pete
Niveau 10
13 août 2004 à 11:00:30

Avec juste les fenêtres et le minimum vital de code ?

jopfleger
jopfleger
Niveau 10
13 août 2004 à 11:00:34

Léa kidnappée.
Léa a été enlevé par des kidnappeurs.
Elle se réveille seule dans une cellule sans fenêtre, n´ayant qu´un lit, un tabouret, et un lavabo pour seules commodités.
Bien sûr il n´y a ni téléphone, ni portable, et les murs n´ont pas de papier peint, juste un enduit gris affreusement banal.
Heureusement que le robinet du lavabo fonctionne, comme cela Léa peut au moins faire sa toilette.
Tout d´un coup, bien qu´elle n´ait rien entendu et qu´il n´y eut aucun bruit à l´intérieur à part entendre l´eau couler du robinet, et qu´elle n´ait vu personne, Léa est convaincue qu´elle est maintenant très loin de chez elle.
L´air de la chambre est filtré, elle n´a donc pas pu faire appel à ses sens olfactifs.
Comment a-t-elle pu le savoir aussi vite, alors qu´elle n´a communiqué avec personne?
Il faut rappeler que Léa est Alsacienne ( d´autres diront Picarde ou Bruxelloise), donc assez fine et douée d´un bon sens de l´observation.

jopfleger
jopfleger
Niveau 10
13 août 2004 à 11:01:38

Oui, Pete, juste les trois fenêtres, je n´ai pas besoin de ton code, mais si tu veux que je l´intégre dans ton code, laisse le.

irvy
irvy
Niveau 10
13 août 2004 à 11:03:17

A cause de l´eau qui sort du robinet.

jopfleger
jopfleger
Niveau 10
13 août 2004 à 11:05:10

Mais encore, Irvy?

Pete
Pete
Niveau 10
13 août 2004 à 11:05:33

Bah c´est plus simple que je laisse tout alors. Sinon ça me fait tout effacer, puis après j´dois copier ce que t´as mis.
Donc la fenêtre A se lance en 1er, et la fenêtre des options est ouverte automatiquement. Pour les fenêtre C, on les appele via l´onglet Bandeaux, donc il y a les 2 boutons de texte, chronomètre, et modif des polices.

jopfleger
jopfleger
Niveau 10
13 août 2004 à 11:06:56

Oui, pas de soucis, envoie ton projet intégralement
Je te commenterai les add ons

Pete
Pete
Niveau 10
13 août 2004 à 11:10:17

Bon suite à un problème j´ai du rebooter.
Ca arrive tout de suite.

Pete
Pete
Niveau 10
13 août 2004 à 11:13:28

Voilà c´est parti.
C´est sûrement un peu le bordel dans le code, j´espère que t´y retrouveras.

jopfleger
jopfleger
Niveau 10
13 août 2004 à 11:16:38

Je ne suis pas inquiet, je sais que tu fais du travail très propre.

jopfleger
jopfleger
Niveau 10
13 août 2004 à 11:24:26

peux-tu m´envoyer aussi Centralexxxx.mdb?

jopfleger
jopfleger
Niveau 10
13 août 2004 à 11:25:19

Et les fichiers Kidxxxx.txt

Pete
Pete
Niveau 10
13 août 2004 à 11:34:01

Ca fait plus de 3Mo zippé, c´est en train de partir.

jopfleger
jopfleger
Niveau 10
13 août 2004 à 11:42:51

Désolé, j´aurais pu m´en passer!

Sujet fermé pour la raison suivante : Ce sujet est archivé et se poursuit sur le nouveau sujet : http://www.jeuxvideo.com/forums/42-3030-59624398-1-0-1-0-0.htm
La vidéo du moment