Propriétés

From Apache OpenOffice Wiki
Jump to: navigation, search
doc OOo
Book.png


Nom et titre

Chaque élément de contrôle possède son propre nom et peut être interrogé à l'aide de la propriété de modèle suivante :

Model.Name (String)
nom de l'élément de contrôle.

Vous pouvez spécifier le titre apparaissant dans la barre de titre d'une boîte de dialogue à l'aide de la propriété de modèle suivante :

Model.Title (String)
titre de la boîte de dialogue (s'applique uniquement aux boîtes de dialogue).

Position et taille

Vous pouvez interroger la taille et la position d'un élément de contrôle à l'aide des propriétés suivantes de l'objet Model :

Model.Height (long)
hauteur de l'élément de contrôle (en unités ma).
Model.Width (long)
largeur de l'élément de contrôle (en unités ma).
Model.PositionX (long)
position X de l'élément de contrôle, mesurée à partir de l'arête intérieure gauche de la boîte de dialogue (en unités ma).
Model.PositionY (long)
position Y de l'élément de contrôle, mesurée à partir de l'arête intérieure supérieure de la boîte de dialogue (en unités ma).

Pour que les boîtes de dialogue conservent la même apparence d'une plate-forme à l'autre, Apache OpenOffice utilise l'unité interne Map AppFont (ma) qui permet de spécifier la position et la taille des éléments au sein des boîtes de dialogue. Une unité ma correspond au huitième de la hauteur moyenne d'un caractère de la police système définie dans le système d'exploitation et au quart de sa largeur. En utilisant les unités ma, Apache OpenOffice garantit qu'une boîte de dialogue aura la même apparence quels que soient le système et les paramètres du système.

Si vous souhaitez modifier la taille ou la position des éléments de contrôle au moment de l'exécution, déterminez la taille totale de la boîte de dialogue et réglez les valeurs des éléments de contrôle sur les rapports des parties correspondants.

Documentation note.png Map AppFont (ma) remplace l'unité Twips pour obtenir une meilleure indépendance vis-à-vis des plates-formes.

Focus et séquence de tabulation

Vous pouvez naviguer dans les éléments de contrôle des différentes boîtes de dialogue en appuyant sur la touche de tabulation. Les propriétés suivantes sont disponibles dans ce contexte dans le modèle des éléments de contrôle :

Model.Enabled (Boolean)
active l'élément de contrôle.
Model.Tabstop (Boolean)
permet d'atteindre l'élément de contrôle à l'aide de la touche de tabulation.
Model.TabIndex (Long)
position de l'élément de contrôle dans l'ordre d'activation.

Enfin, l'élément de contrôle fournit une méthode getFocus permettant à l'élément de contrôle sous-jacent de recevoir le focus :

getFocus
l'élément de contrôle reçoit le focus (uniquement pour les boîtes de dialogue).

Boîtes de dialogue à plusieurs onglets

Dans Apache OpenOffice, une boîte de dialogue peut posséder plusieurs onglets. La propriété Step d'une boîte de dialogue définit l'onglet actif, tandis que la propriété Step d'un élément de contrôle spécifie l'onglet dans laquelle il doit s'afficher.

La valeur Step (si elle définie sur 0) constitue un cas à part. Si vous définissez cette valeur sur zéro dans une boîte de dialogue, tous les éléments de contrôle sont visibles, quelle que soit leur valeur Step. De même, si vous définissez cette valeur sur zéro pour un élément de contrôle, celui-ci s'affiche sur tous les onglets d'une boîte de dialogue.

Création du premier onglet de la boîte de dialogue

Dans l'exemple ci-dessus, vous pouvez également assigner la valeur Step (définie sur 0) à la ligne de séparation, ainsi que les boutons Cancel, Prev, Next et Done pour afficher ces éléments sur tous les onglets. Vous pouvez également assigner ces éléments à un seul onglet (le premier, par exemple).

Le code suivant augmente et réduit la valeur Step des gestionnaires d'événements des boutons Next et Prev et modifie le statut de ces boutons.

Sub cmdNext_Initiated
 
   Dim cmdNext As Object
   Dim cmdPrev As Object
 
   cmdPrev = Dlg.getControl("cmdPrev")
   cmdNext = Dlg.getControl("cmdNext")
   cmdPrev.Model.Enabled = Not cmdPrev.Model.Enabled
   cmdNext.Model.Enabled = False
   Dlg.Model.Step = Dlg.Model.Step + 1
 
End Sub
 
Sub cmdPrev_Initiated
 
   Dim cmdNext As Object
   Dim cmdPrev As Object
 
   cmdPrev = Dlg.getControl("cmdPrev")
   cmdNext = Dlg.getControl("cmdNext")
   cmdPrev.Model.Enabled = False
   cmdNext.Model.Enabled = True
   Dlg.Model.Step = Dlg.Model.Step - 1
 
End Sub

Une variable globale Dlg faisant référence à une boîte de dialogue ouverte doit être ajoutée pour que cet exemple fonctionne. La boîte de dialogue change ensuite d'apparence de la façon suivante :

Premier onglet
Deuxième onglet
Content on this page is licensed under the Public Documentation License (PDL).
Personal tools