|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : avril 2003 Messages : 12 ![]() |
Bonjour,
Voici mon problème : - J'ai un ruban général à l'application - J'ai un ruban contextuel pour chaque formulaire (fichier xml avec <contextualTabs> et <tabSet idMso="TabSetFormReportExtensibility"> ) Je n'arrive pas à mettre à jour la valeur d'une liste déroulante avec la méthode invalidatecontrol dans les formulaires contextuels. J'y arrive pourtant bien dans le ruban général (avec fonction callback GetText, méthode invalidatecontrol de l'objet du ruban chargé dans le ribbonloaded. Donc question : La méthode invalidatecontrol (ou invalidate d'ailleurs) fonctionne elle avec les rubans contextuels ou uniquement avec le ruban général ? Merci de vos lumières. Olivier |
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : septembre 2003 Messages : 4 300 ![]() |
bjr,
oui ça marche, je le fais mais tu parles de deux rubans utilise-tu bien le bon objet pour appeler InvalidateControl?
__________________
Assistant de création/modification de rubans Office Utilisez en VBA les librairies graphiques GDI, GDI+ et openGL Blog Office Mon Site DVP |
|
|
00
|
|
|
#3 | ||||||
|
Invité régulier
![]() Inscription : avril 2003 Messages : 12 ![]() |
Oups, Je n'ai pas utilisé les bons termes
J'ai effectivement un seul ruban. - Un onglet lié à l'application - Un onglet contextuel (qui apprait en couleur) pour chaque formulaire Je n'arrive pas à invalider un controle dans l'onglet contextuel (en posant un point d'arrêt sur getText, j'ai constaté que la fonction n'est jamais exécutée) alors qu'elle l'est pour un contrôle de l'onglet de l'application. code xml du la liste qui ne fonctionne pas : Code :
<comboBox id="cbZones" label="Zone : " getItemCount="getNbZones" getItemLabel="getZones" sizeString="aaaaaaaaaaaaaaaaaaaa" onChange="cbComZones_change" getText="cbComZones_GetText" screentip="Rechercher un site" supertip="Choisissez un site dans la liste déroulante" ></comboBox> Code :
<comboBox id="cbDocZones" label="Secteur : " getItemCount="getNbDocZones" getItemLabel="getDocZones" sizeString="aaaaaaaaaaaaaaaaaaaaaaa" onChange="cbDocZones_change" getText="cbDocZones_GetText" screentip="Rechercher un site" supertip="Choisissez un site dans la liste déroulante" ></comboBox> Code :
getText de la liste qui fonctionne (FiltreZone est globale) Code :
Code :
Merci pour votre aide. |
||||||
|
|
00
|
|
|
#4 |
![]() ![]() Inscription : septembre 2003 Messages : 4 300 ![]() |
ben ça devrait marcher à priori
est-ce que l'onglet contextuel est bien visible au moment du InvalidateControl? le code InvalidateControl est-il placé dans le code de chargement du formulaire? sil est possible qu'il y ait un petit délais d'affichage de l'onglet contextuel (le ruban est un peu lent à réagir et peut-être bien que l'onglet n'apparaît qu'une fois le chargement du formulaire terminé) peut-être qu'un DoEvents avant les InvalidateControl pourrait forcer l'onglet à apparaître avant de demander la mise à jour du contrôle?
__________________
Assistant de création/modification de rubans Office Utilisez en VBA les librairies graphiques GDI, GDI+ et openGL Blog Office Mon Site DVP |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com