Personnalisation du format des contrôles dans le mode Backstage Office 2010 (traduction automatique)

Important

Cet article a été traduit automatiquement, voir l’avertissement. Vous pouvez consulter la version en anglais de cet article ici.

Procédure Office Visual

Résumé : apprenez à définir la disposition horizontale ou verticale des contrôles et leur affichage dans le mode Backstage Microsoft Office 2010. (11 pages imprimées)

Dernière modification : mercredi 12 septembre 2012

S’applique à : Excel 2010 | Office 2010 | Open XML | PowerPoint 2010 | VBA | Visual Studio | Word 2010

Applies to: Microsoft Office 2010 | Microsoft Excel 2010 | Microsoft Visual Studio 2010

Publication :   Avril 2010

**Fournie par :**Michael Case, iSoftStone

Vue d’ensemble

La Microsoft Office Backstage vue, nouveautée de Microsoft Office 2010, remplace le menu Fichier traditionnel pour fournir un espace centralisé pour le fichier des tâches de gestion tels qu'ouverture fichiers nouveaux ou existants, définition des propriétés de document et partager des informations. Comme le ruban Microsoft Office Fluent, la vue Backstage est totalement extensible à l'aide de XML pour définir la structure, les composants et les procédures de rappel pour donner à des fonctionnalités de composants.

Ce bureau Visual article explique comment créer un affichage de Backstage spécifiques au document personnalisé avec un format de contrôle personnalisé. La vue Backstage utilise le contrôle layoutContainer pour spécifier si un jeu de contrôles est affiché verticalement ou horizontalement. La vue Backstage utilise également des procédures de rappel pour définir dynamiquement l'affichage d'un groupe de contrôles.

L'exemple de cette Visual procédure utilise outil Custom UI Editor de Trang Luu (éventuellement en anglais) pour simplifier l'ajout XML de l'interface utilisateur personnalisée à un classeur Microsoft Excel 2010. Vous devez télécharger et installer l'éditeur de l'interface utilisateur personnalisée pour suivre les étapes décrites dans cet article.

Code

Cet article permet de personnaliser l'affichage Backstage pour un classeur Microsoft Excel 2010 en utilisant une combinaison de XML et Microsoft Visual Basic pour Applications (VBA). Le fichier XML définit un onglet personnalisé et les contrôles s'affichent dans la vue Backstage. Le code VBA fournit les fonctionnalités requises par les procédures de rappel définis dans le fichier XML de l'interface utilisateur personnalisée. Il vous guide également dans les étapes suivantes pour montrer comment créer une vue Backstage personnalisée dans un classeur Excel 2010 :

  • Créer un exemple de classeur Excel avec une vue Backstage.

  • Ajoutez le code XML d'interface personnalisé.

  • Ajoutez le code de rappel VBA.

  • Afficher la page d'affichage Backstage personnalisée.

Création de l'exemple de classeur Excel

Dans cette Visual procédure, vous ajoutez le XML de l'interface utilisateur personnalisée et le code VBA vers un classeur Excel.

RemarqueRemarque
Vous devez créer le classeur Excel en tant qu'un classeur de macros (.xlsm) pour prendre en charge le code VBA.

Pour créer le classeur

  1. Démarrez Microsoft Excel 2010.

  2. Dans le menu Fichier, cliquez sur Enregistrer sous.

  3. Dans la boîte de dialogue Enregistrer sous , dans la zone de liste déroulante Enregistrer en tant que type , sélectionnez Classeur Excel (prenant en charge les macros) (*.xlsm).

  4. Enregistrez le document sous C:\Temp\BackstageViewFormatControls.xlsm. Cliquez sur Enregistrer pour terminer.

Ajoutez le XML de l'interface utilisateur personnalisée

L'éditeur de l'interface utilisateur personnalisée simplifie l'ajout de XML de l'interface utilisateur personnalisée pour le classeur que vous avez créé à l'étape précédente.

Pour ajouter le code XML de l'interface utilisateur personnalisés

  1. Démarrez l'éditeur de l'interface utilisateur personnalisée.

  2. Dans le menu Fichier , cliquez sur Ouvrir.

  3. Sélectionnez le fichier C:\Temp\BackstageViewFormatControls.xlsm que vous avez créé dans la procédure précédente et puis cliquez sur Ouvrir.

  4. Dans le menu Insérer , cliquez sur Partie de l'interface utilisateur personnalisée Office 2010. Cela crée un fichier customUI14.xml dans le document.

  5. Sélectionnez le fichier customUI14.xml et copiez le code XML suivant dans le fichier.

    <?xml version="1.0" encoding="utf-8"?>
    <!-- CustomUI is the root tag of all Office Fluent UI customizations. -->
    <customUI xmlns="https://schemas.microsoft.com/office/2009/07/customui"
          onLoad="onLoad">
      <!-- The Backstage view defines custom structure of the Backstage UI. -->
      <backstage>
        <tab id="customFormatTab" label="Customized Control Format"
             insertAfterMso="TabInfo">
          <firstColumn>
            <group id="specDetailsGroup" label="Specification Details"
                   getHelperText="GetSpecDetailsHelperText">
              <topItems>
                <!-- The layoutChildren attribute places 
                      this set of controls vertically. -->
                <!-- The GetSpecDetailText callback returns 
                      a value to display for each editBox. -->
                <layoutContainer id="specDetails" layoutChildren="vertical">
                  <editBox id="specTitle" label="Title:        "
                           getText="GetSpecDetailText" />
                  <editBox id="specDesigner" label="Designer: "
                           getText="GetSpecDetailText" />
                  <editBox id="specEngineer" label="Engineer: "
                           getText="GetSpecDetailText" />
                  <editBox id="specTeam" label="Team:      "
                           getText="GetSpecDetailText"/>
                  <editBox id="specCost" label="Cost:        "
                           getText="GetSpecDetailText"/>
                </layoutContainer>
                <!-- The layoutChildren attribute places 
                      the buttons horizontally. -->
                <layoutContainer id="specButtons" layoutChildren="horizontal">
                  <button id="getCostBasis" 
                          label="Get Cost Basis Info"/>
                  <button id="getCostCodes" 
                          label="Get Cost Codes"/>
                  <button id="getTeamCodes" 
                          label="Get Team Codes"/>
                </layoutContainer>
              </topItems>
            </group>
          </firstColumn>
          <secondColumn>
            <!-- The getStyle and getHelperText callbacks dynamically 
                  set the Open Design Issues Group style 
                  and text based on whether there are any open issues. -->
            <group id="openDesignIssuesGroup" label="Open Design Issues"
                   getStyle="GetIssuesStyle" 
                   getHelperText="GetIssuesHelperText">
              <topItems>
                <!-- The layoutChildren attribute places 
                      each set of issues controls horizontally. -->
                <!-- The onAction callback marks issues as resolved 
                      when the user clicks the Click to resolve button. -->
                <!-- The getVisible callback hides the 
                      issues after they are marked as resolved. -->
                <layoutContainer id="delayIssueContainer"
                                 layoutChildren="horizontal">
                  <button id="resolveDelayIssue" label="Click to resolve"
                          imageMso="AcceptInvitation" onAction="ResolveIssue"
                          getVisible="getIssueVisibility" />
                  <labelControl id="delayIssue"
                                label="Issue: Delay in Material Delivery"
                                getVisible="getIssueVisibility" />
                </layoutContainer>
                <layoutContainer id="equipmentIssueContainer"
                                 layoutChildren="horizontal">
                  <button id="resolveEquipmentIssue" label="Click to resolve"
                          imageMso="AcceptInvitation" onAction="ResolveIssue"
                          getVisible="getIssueVisibility" />
                  <labelControl id="equipmentIssue"
                                label="Issue: Equipment Down Time"
                                getVisible="getIssueVisibility" />
                </layoutContainer>
                <layoutContainer id="laborIssueContainer"
                                 layoutChildren="horizontal">
                  <button id="resolveLaborIssue" label="Click to resolve"
                          imageMso="AcceptInvitation" onAction="ResolveIssue"
                          getVisible="getIssueVisibility" />
                  <labelControl id="laborIssue"
                                label="Issue: Labor Dispute"
                                getVisible="getIssueVisibility" />
                </layoutContainer>
              </topItems>
            </group>
          </secondColumn>
        </tab>
      </backstage>
    </customUI>
  6. Dans le menu Fichier, cliquez sur Enregistrer.

  7. Fermez l'éditeur de l'interface utilisateur personnalisée.

Ajoutez le Code de rappel VBA

Les procédures de rappel VBA ajoutent des fonctionnalités dans les composants de vue Backstage personnalisés que vous avez ajoutés à l'aide de XML de l'interface utilisateur personnalisée dans la procédure précédente.

Pour ajouter le code de rappel VBA

  1. Démarrez Microsoft Excel 2010.

  2. Sous l'onglet Fichier , cliquez sur Ouvrir.

  3. Ouvrez le classeur BackstageViewFormatControls.xlsm.

  4. Sélectionnez l'onglet Développeur .

  5. Cliquez sur Visual Basic.

  6. Dans le menu Insertion, cliquez sur Module.

  7. Sélectionnez Module 1 , puis copiez le code VBA suivant dans le fichier.

    ' Reference to the ribbon for refreshing the UI.
    Public processRibbon As IRibbonUI
    
    ' Variables that track the open design issues.
    Public delayIssueResolved As Boolean
    Public equipmentIssueResolved As Boolean
    Public laborIssueResolved As Boolean
    
    ' Store a reference to the ribbon for refreshing the UI.
    Sub OnLoad(ribbon As IRibbonUI)
      Set processRibbon = ribbon
    End Sub
    
    ' Helper text for the specification details group.
    Sub GetSpecDetailsHelperText(control As IRibbonControl, _
                                 ByRef returnedVal)
      returnedVal = "Please be sure that the following information " & _
                    "is kept up to date. Many processes rely on " & _
                    "this information."
    End Sub
    
    ' Returns the text to display for each specification detail editBox object.
    Sub GetSpecDetailText(control As IRibbonControl, _
                          ByRef returnedVal)
      Select Case control.ID
        Case "specTitle"
          returnedVal = "Flexible Bracket"
        Case "specDesigner"
          returnedVal = "Andrew Fuller"
        Case "specEngineer"
          returnedVal = "Nancy Davolio"
        Case "specTeam"
          returnedVal = "Design"
        Case "specCost"
          returnedVal = "$896,210"
      End Select
    End Sub
    
    ' Group style for the open design issues group.
    ' If all issues are not resolved the error style
    ' emphasizes the group.
    Sub GetIssuesStyle(control As IRibbonControl, _
                       ByRef returnedVal)
      If (delayIssueResolved And equipmentIssueResolved _
          And laborIssueResolved) Then
        ' This enumeration was renamed after the Office 2010 beta release.
        ' For the beta, use the OutSpaceSlabStyle.OutSpaceSlabStyleNormal enumeration.
        returnedVal = BackstageGroupStyle.BackstageGroupStyleNormal
      Else
        ' This enumeration was renamed after the Office 2010 beta release.
        ' For the beta release, use the OutSpaceSlabStyle.OutSpaceSlabStyleError enumeration.
        returnedVal = BackstageGroupStyle.BackstageGroupStyleError
      End If
    End Sub
    
    ' Helper text for the open design issues group.
    ' Text returned is based on the status of all issues.
    Sub GetIssuesHelperText(control As IRibbonControl, _
                            ByRef returnedVal)
      If (delayIssueResolved And equipmentIssueResolved _
          And laborIssueResolved) Then
        returnedVal = "All issues are resolved."
      Else
        returnedVal = "Click Resolve as issues are resolved."
      End If
    End Sub
    
    ' Visibility for each open design issue.
    ' If an issue is not marked as resolved, the corresponding
    ' button and label display.
    Sub GetIssueVisibility(control As IRibbonControl, _
                           ByRef returnedVal)
      Select Case control.ID
        Case "resolveDelayIssue"
          returnedVal = Not delayIssueResolved
        Case "delayIssue"
          returnedVal = Not delayIssueResolved
        Case "resolveEquipmentIssue"
          returnedVal = Not equipmentIssueResolved
        Case "equipmentIssue"
          returnedVal = Not equipmentIssueResolved
        Case "resolveLaborIssue"
          returnedVal = Not laborIssueResolved
        Case "laborIssue"
          returnedVal = Not laborIssueResolved
      End Select
    End Sub
    
    ' Called when the user clicks a resolve issue button.
    ' Sets the button's corresponding issue as resolved.
    Sub ResolveIssue(control As IRibbonControl)
      Select Case control.ID
        Case "resolveDelayIssue"
          delayIssueResolved = True
        Case "resolveEquipmentIssue"
          equipmentIssueResolved = True
        Case "resolveLaborIssue"
          laborIssueResolved = True
      End Select
    
      ' Invalidate is called to reset the UI, causing all controls
      ' to redisplay and executing all relevant callbacks.
      processRibbon.Invalidate
    End Sub
  8. Dans le menu Fichier, cliquez sur Enregistrer.

  9. Fermez Visual Basic pour Applications et revenir au classeur.

Afficher la Backstage afficher une Page personnalisée

Pour afficher la page d'affichage Backstage personnalisée définie ci-dessus, affichage Backstage en sélectionnant l'onglet Fichier . Il s'agit de la nouvelle vue Backstage. Après le Backstage s'affiche, sélectionnez l'onglet Format du contrôle personnalisé qui se trouve sous l'onglet Informations intégré. Lorsque vous sélectionnez l'onglet Format du contrôle personnalisé , vous pouvez interagir avec la page d'affichage Backstage personnalisée.

La figure 1. Page de l'affichage personnalisée Backstage

Page d’affichage personnalisée Backstage

 

Lecture

Extension de la vue Office 2010 Backstage pour inclure des contrôles et des pages personnalisées requiert une combinaison de l'ajout de XML de l'interface utilisateur personnalisée pour le document Office et de code VBA pour fournir des fonctionnalités pour les rappels spécifiés dans le fichier XML de l'interface utilisateur personnalisée.

L'exemple de code montre comment contrôler la disposition horizontale et verticale des contrôles ajoutés à la page d'affichage Backstage. L'exemple de code montre également comment mettre l'accent sur un groupe de contrôles en définissant le style d'affichage d'un groupe.

Initialiser l'interface utilisateur personnalisée

Dans certains cas, une procédure de rappel, une modification qui requiert le réaffichage des contrôles de la vue Backstage. Pour réafficher les contrôles de la vue Backstage, appelez la méthode Invalidate de l'objet RibbonUI.

L'extrait de code suivant montre comment stocker une référence au contrôle RibbonUI lors du chargement de l'interface utilisateur personnalisée. L'élément customUI contienne l'attribut onLoad. Dans ce cas, l'attribut spécifie le rappel OnLoad. Le rappel OnLoad stocke une référence à l'objet RibbonUI. L'objet RibbonUI est utilisé dans les rappels pour réafficher les contrôles d'affichage Backstage.

<!-- customUI is the root tag of all Fluent UI customizations. -->
<customUI xmlns="https://schemas.microsoft.com/office/2009/07/customui"
      onLoad="OnLoad">
'Reference to the ribbon for refreshing the UI.
Public processRibbon As IRibbonUI

'Store a reference to the ribbon for refreshing the UI.
Sub OnLoad(ribbon As IRibbonUI)
  Set processRibbon = ribbon
End Sub

Spécifier la disposition de contrôle

Vous souhaiterez peut-être placer les contrôles horizontalement dans la page au lieu d'utiliser la disposition verticale par défaut. L'exemple de code suivant montre comment utiliser un contrôle layoutContainer pour placer des contrôles horizontalement ou verticalement, en définissant l'attribut layoutChildren du contrôle layoutContainer. Le premier contrôle de layoutContainer définit l'attribut layoutChildren la valeur par défaut de vertical. Elle affiche également les contrôles de zone d'édition Spécification en détail dans une colonne verticale. Le deuxième contrôle layoutContainer définit l'attribut layoutChildren à horizontal. Cette affiche le bouton Détails de la spécification des contrôles dans une ligne horizontale sous les zones d'édition.

<!-- The layoutChildren attribute places
      this set of controls vertically. -->
<!-- The GetSpecDetailText callback returns 
      a value to display for each editBox. -->
<layoutContainer id="specDetails" layoutChildren="vertical">
  <editBox id="specTitle" label="Title:        "
           getText="GetSpecDetailText" />
  <editBox id="specDesigner" label="Designer: "
           getText="GetSpecDetailText" />
  <editBox id="specEngineer" label="Engineer: "
           getText="GetSpecDetailText" />
  <editBox id="specTeam" label="Team:      "
           getText="GetSpecDetailText"/>
  <editBox id="specCost" label="Cost:        "
           getText="GetSpecDetailText"/>
</layoutContainer>
<!-- The layoutChildren attribute places 
      the buttons horizontally. -->
<layoutContainer id="specButtons" layoutChildren="horizontal">
  <button id="getCostBasis" 
          label="Get Cost Basis Info"/>
  <button id="getCostCodes" 
          label="Get Cost Codes"/>
  <button id="getTeamCodes" 
          label="Get Team Codes"/>
</layoutContainer>

Définir le Style de groupe pour mettre en évidence d'état

Il existe peut-être des instances où vous souhaitez attirer l'attention sur un groupe particulier de contrôles selon certaines conditions. Le groupe de Problèmes de conception ouverte appelle attirer l'attention lorsqu'il existe des problèmes non résolus en affichant en surbrillance rouge. Backstage afficher les groupes de définir leur style d'affichage à l'aide rappel de l'attribut getStyle. Ce rappel peut renvoyer une des valeurs d'énumération BackstageGroupStyle suivantes :

  • BackstageGroupStyleNormal. Le groupe ne dispose d'aucun traitement spécial visual.

  • BackstageGroupStyleWarning. Le groupe est surligné en jaune.

  • BackstageGroupStyleError. Le groupe est en rouge.

L'exemple de code XML d'interface personnalisé suivant montre comment spécifier des rappels dynamiquement pour définir l'affichent des contrôles sur la page. Le groupe de Problèmes de conception ouvert définit le rappel de l'attribut getStyle et un rappel de l'attribut getHelperText. Ces rappels évaluent s'il existe des problèmes non résolus et renvoient le style approprié et le texte. Bouton cliquez sur résoudre et l'étiquette descriptive de chaque problème définir le rappel de l'attribut getVisible, masquant les contrôles après qu'un problème est résolu. Le bouton résoudre définit également le rappel d'un attribut onAction pour indiquer que le problème résolu.

<!-- The getStyle and getHelperText callbacks 
      dynamically set the Open Design Issues Group style 
      and text based on whether there are any open issues. -->
<group id="openDesignIssuesGroup" label="Open Design Issues"
       getStyle="GetIssuesStyle" 
       getHelperText="GetIssuesHelperText">
  <topItems>
    <!-- The layoutChildren attribute places 
          each set of issue controls horizontally. -->
    <!-- The onAction callback marks issues as resolved 
          when the user clicks the resolve button. -->
    <!-- The getVisible callback hides 
          issues after they are marked as resolved. -->
    <layoutContainer id="delayIssueContainer" 
    layoutChildren="horizontal">
      <button id="resolveDelayIssue" label="Click to resolve"
              imageMso="AcceptInvitation" onAction="ResolveIssue"
              getVisible="getIssueVisibility" />
      <labelControl id="delayIssue"
                    label="Issue: Delay in Material Delivery"
                    getVisible="getIssueVisibility" />
    </layoutContainer>
    <layoutContainer id="equipmentIssueContainer"
                     layoutChildren="horizontal">
      <button id="resolveEquipmentIssue" label="Click to Resolve"
              imageMso="AcceptInvitation" onAction="ResolveIssue"
              getVisible="getIssueVisibility" />
      <labelControl id="equipmentIssue"
                    label="Issue: Equipment Down Time"
                    getVisible="getIssueVisibility" />
    </layoutContainer>
    <layoutContainer id="laborIssueContainer"
                     layoutChildren="horizontal">
      <button id="resolveLaborIssue" label="Click to resolve"
              imageMso="AcceptInvitation" onAction="ResolveIssue"
              getVisible="getIssueVisibility" />
      <labelControl id="laborIssue"
                    label="Issue: Labor Dispute"
                    getVisible="getIssueVisibility" />
    </layoutContainer>
  </topItems>
</group>

L'exemple de code suivant montre comment l'attribut getStyle du groupe de Problèmes de conception ouverte (avec son rappel GetIssuesStyle correspondant) et l'attribut getHelperText (avec le rappel GetIssuesHelperText) accentuer le groupe lorsqu'il existe des problèmes non résolus. Initialement tous les problèmes non résolus et le rappel GetIssuesStyle renvoie la valeur d'énumération BackstageGroupStyleError pour mettre l'accent sur le groupe de Problèmes de conception ouverte . Une fois que tous les problèmes sont résolus, le rappel GetIssuesStyle renvoie la valeur d'énumération BackstageGroupStyleNormal pour supprimer la mise en évidence. Rappel de l'attribut getHelperText, GetIssuesHelperText, travaille en parallèle avec le rappel de GetIssuesStyle en renvoyant des instructions sur la façon de marquer les problèmes résolus jusqu'à ce que tous les problèmes sont résolus.

' Group style for the Open Design Issues Group.
' If all issues are not resolved the error style 
' emphasizes the group.
Sub GetIssuesStyle(control As IRibbonControl, _
                   ByRef returnedVal)
  If (delayIssueResolved And equipmentIssueResolved _
      And laborIssueResolved) Then
    ' This enumeration was renamed after the Office 2010 beta release.
    ' For the beta release, use the OutSpaceSlabStyle.OutSpaceSlabStyleNormal
    ' enumeration.
    returnedVal = BackstageGroupStyle.BackstageGroupStyleNormal
  Else
    ' This enumeration was renamed after the Office 2010 beta release.
    ' For the beta release, use the OutSpaceSlabStyle.OutSpaceSlabStyleError
    ' enumeration.
    returnedVal = BackstageGroupStyle.BackstageGroupStyleError
  End If
End Sub

'Helper Text for the Open Design Issues group.
' Text returned is based on the status of all issues.
Sub GetIssuesHelperText(control As IRibbonControl, _
                        ByRef returnedVal)
  If (delayIssueResolved And equipmentIssueResolved _
      And laborIssueResolved) Then
    returnedVal = "All issues are resolved."
  Else
    returnedVal = "Click resolve as issues are resolved."
  End If
End Sub

L'exemple de code suivant montre comment le bouton Cliquez pour résoudre et l'attribut getVisible de l'étiquette Problème (avec le rappel GetIssueVisibility) masque les problèmes une fois qu'ils sont marqués comme résolus. La valeur GetIssueVisibility identifie le contrôle pour afficher et renvoie une valeur de True ou False en fonction de l'état résolu le problème connexe.

' Visibility for each Open Design Issue.
'If an issue is not marked as resolved, the corresponding
' button and label display.
Sub GetIssueVisibility(control As IRibbonControl, 
                       ByRef returnedVal)
  Select Case control.ID
    Case "resolveDelayIssue"
      returnedVal = Not delayIssueResolved
    Case "delayIssue"
      returnedVal = Not delayIssueResolved
    Case "resolveEquipmentIssue"
      returnedVal = Not equipmentIssueResolved
    Case "equipmentIssue"
      returnedVal = Not equipmentIssueResolved
    Case "resolveLaborIssue"
      returnedVal = Not laborIssueResolved
    Case "laborIssue"
      returnedVal = Not laborIssueResolved
  End Select
End Sub

L'exemple de code suivant montre comment rappel de l'attribut onAction du bouton cliquez sur résoudre , ResolveIssue, marques de problèmes comme résolu. Le rappel ResolveIssue identifie quel bouton l'utilisateur a cliqué et marque le problème approprié comme résolu. Une fois que le problème est résolu, la méthode Invalidate de l'objet RibbonUI réaffiche les contrôles d'affichage Backstage et affiche l'état actuel de problèmes résolus. Lorsque la méthode Invalidate est appelée, le rappel d'attribut de getStyle du groupe Des problèmes de conception ouverte et le rappel de l'attribut getHelperText sont exécutées à nouveau. Rappel de l'attribut getVisible pour chaque étiquette de Problèmecliquez sur résoudre également d'exécuter à nouveau.

' Called when a  user clicks the Resolve issue button.
' Sets the button's corresponding issue as resolved.
Sub ResolveIssue(control As IRibbonControl)
  Select Case control.ID
    Case "resolveDelayIssue"
      delayIssueResolved = True
    Case "resolveEquipmentIssue"
      equipmentIssueResolved = True
    Case "resolveLaborIssue"
      laborIssueResolved = True
  End Select

  ' Invalidate is called to reset the UI, causing all controls
  ' to redisplay and executing all relevant callbacks.
  processRibbon.Invalidate
End Sub
Le voir

Regarder une vidéo

Regardez la vidéo (éventuellement en anglais)

Longueur de la vidéo : 00 : 09 : 14 | Taille du fichier: Mo 19,2 | Type de fichier : WMV

Cliquez pour récupérer le code

Saisir le Code (éventuellement en anglais)

L’explorer

 

Notes

Avertissement traduction automatique : cet article a été traduit par un ordinateur, sans intervention humaine. Microsoft propose cette traduction automatique pour offrir aux personnes ne maîtrisant pas l’anglais l’accès au contenu relatif aux produits, services et technologies Microsoft. Comme cet article a été traduit automatiquement, il risque de contenir des erreurs de grammaire, de syntaxe ou de terminologie.