Rafraichissement de menu

Signaler
Messages postés
12
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
8 avril 2008
-
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
-
Bonjour à tous,

Voila je vous écris car j'ai un petit problème (on doit pas vous la faire souvent ...)
J'ai sur ma form principale un menu, jusque là tout va bien.
Sur la fonction "Sub mnuPrincipal_Click()" j'éxecute une série d'instruction visant à définir la propriété enabled = True ou False des sous-menu associés. Ca marche bien mais le seul problème c'est que le menu commence par s'afficher et qu'ensuite les sous-menu s'activent ou se désactivent ! Comme si la méthode s'éxecutait en même temps que l'affichage.
En termes de rendu ça ne fait pas très joli alors j'ai bien essayé de mettre "Application.screenUpdate False" au début de ma fonction puis "Application.screenUpdate True" à la fin mais ça ne change rien
. Est ce que quelqu'un aurait une idée pour m'aider à résoudre ce bug ?

Merci bien !! et bonne journée

4 réponses

Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Bonjour,

avant même d'analyser le reste :

Application.screenUpdate = False n'est pas du VB6 et j'ai bien l'impression de ce que ce n'est pas non plus (écrit ainsi) du VBA !!!!

C'est quoi, alors ?
Messages postés
12
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
8 avril 2008

Nous sommes tout à fait d'accord, c'est la résultante d'une recherche rapide et inneficace sur le oueb sans réelle réflexion de ma part.

Ceci étant je sèche toujours sur mon problème. Pour plus d'information il faut savoir que l'activation ou la désactivation des sous-menu est conditionné par un élément extérieur à mon programme d'ou la nécessité de réaliser les tests que je mentionnent au moment de l'affichage du menu, ou plutôt juste avant l'affichage pour que ce soit joli (objet de mon post).

Je précise par soucis d'honneteté que j'ai aussi posé cette question sur un autre forum de développement et que j'indiquerais bien entendu la meilleure réponse sur l'un ou l'autre des forums pour étendre les bases de connaissance. Si toutefois ça vous plait pas faites le moi savoir que je ne recommence pas !
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
41
salut,

déplacé de VB6 vers VBA
(tache de faire attention stp)

logiquement écris simplement DoEvents en première ligne (sous Sub mnuPrincipal_Click()) et çà devrait suffire

(sert à donner la main au système, plus ou moins.... çà le laissera respirer et donc dessiner)
possible que tu aies (aussi??) à placer cette commande après le changement d'état enabled du menu

Si toutefois ça vous plait pas faites le moi savoir que je ne recommence pas !
ah bah vla autre chose..., çà ferait mal d'en être empêché non? ^^

bonne journée ++
PCPT  [AFCK]
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
18
JMF et toi semblez d'accord, mais sur quoi ?
Sous quel programme développes-tu ?
Que sont ces menus si c'est du VBA ? et où sont-ils ?

Tes menus, si je ne me trompe, sont sur une Form VB6 et tu utilises ScreenUpdating qui est du VBA ... Je m'y perds un peu là ...

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI