Accueil Fonctions Calc Menu Basic EDI OOo 1.x EDI OOo 2.x EDI LibO - OOo 3.x Affectation touche Affectation icône Etape par étape Macro débutant Fonctions Basic Dialogues OOo1-2 Dialogues LibO-OOo3 Quelques exemples Exemples dialogue Fonctions perso Définitions Recherche sur site


Boîtes de dialogues. Carte du club 1/3

 




Accès direct pages : Petit test 1/2, Petit test 2/2, Nuancier, Carte club 1/3, Carte club 2/3, Carte club 3/3,


 

Vous avez vu les pages précédentes ? Alors continuons avec un autre exemple simple : Une boîte de dialogue pour entrer des informations pour un club, et qui ressemble d'ailleurs à la carte du club.

 

Comme pour l'exemple précédent, nous allons créer une boite de dialogue ressemblant à celle-ci. Les dimensions sont approximatives.

En revanche, il ne faudra pas oublier dans les propriétés de CommandButton1, de choisir OK comme Type de bouton (onglet Général ), et pour CommandButton2, choisir Annuler.
A droite, un exemple de résultat.

Les Nom et Prénom sont inscrits dans des champs avec l'icône zone de texte TextField, mais les noms (Nom, Prénom) sont créés avec l'icône champ d'étiquette Label.

Sous le texte Valable jusqu'au, avec l'icône champ date DateField et fixer Option déroulante sur Oui

Sous le texte Catégorie, avec l'icône zone de liste ListBox.

Le champ pour l'image est créé avec l'icône contrôle picto ImageControl. Pour info, cette illustration provient de http://clipartworld.free.fr. Les images se trouvant sur ce site sont libres de droits. J'ai simplement réduit la taille. Sauvegardez cette image, via un clic droit sur l'image, dans le dossier de votre choix.

 

 

 

Au travers de ces exemples, les données ne sont pas traitées. Ce n'est pas le but de cet exercice.

 

Pour débuter.

 

Dialog007.1 (partiel)

 

  1. Sub CarteClub
  2.   Dim oDialog As Object, oPDialog As Object
  3.   Dim oTxt As Object
  4.   Dim ChampNom As Object
  5.   Dim oListBox As Object
  6.   '
  7.   DialogLibraries.LoadLibrary("Standard")
  8.   oDialog = DialogLibraries.Standard.Dialog1
  9.   oPDialog = CreateUnoDialog(oDialog)
  10.   '
  11.   exitOK = com.sun.star.ui.dialogs.ExecutableDialogResults.OK
  12.   '
  13.   ' Méthode 1
  14.   oTxt = oPDialog.getControl("Label1")
  15.   oTxt.Text = "Nom"
  16.   oTxt.Model.Align = 2
  17.   '
  18.   ' Méthode 2
  19.   oPDialog.getControl("Label2").Text = "Prénom"
  20.   oPDialog.getControl("Label2").Model.Align = 2
  21.   '
  22.   ' Méthode 3
  23.   With oPDialog.getControl("Label3")
  24.     .Text = "Valable jusqu'au"
  25.     .Model.Align = 1 'centré
  26.   End With
  27.   '
  28.   With oPDialog.getControl("Label4")
  29.     .Text = "Catégorie"
  30.     .Model.Align = 1 'centré
  31.   End With
  32.   '
  33.   oPDialog.setTitle("Carte du club") ' Titre boîte dialogue
  34.   '
  35.   oPDialog.Execute()
  36. End Sub

 

Listing partiel, mais qui exécute l'affichage des Label. Regardez bien, vous avez 3 méthodes différentes pour des résultats identiques. A vous donc de choisir votre solution. Des solutions, il y en a d'autres, comme par exemple en ligne 16,

oTxt.Model.Align = 2

qui peut être remplacé par

oPDialog.Model.Label1.Align = 2

 

 

 

Dialog007.2 (partiel)

 

  1. Sub CarteClub
  2.   Dim oDialog As Object, oPDialog As Object
  3.   Dim oTxt As Object
  4.   Dim ChampNom As Object
  5.   Dim oListBox As Object
  6.   '
  7.   DialogLibraries.LoadLibrary("Standard")
  8.   oDialog = DialogLibraries.Standard.Dialog1
  9.   oPDialog = CreateUnoDialog(oDialog)
  10.   '
  11.   exitOK = com.sun.star.ui.dialogs.ExecutableDialogResults.OK
  12.   '
  13.   ' Méthode 1
  14.   oTxt = oPDialog.getControl("Label1")
  15.   oTxt.Text = "Nom"
  16.   oTxt.Model.Align = 2
  17.   '
  18.   ' Méthode 2
  19.   oPDialog.getControl("Label2").Text = "Prénom"
  20.   oPDialog.getControl("Label2").Model.Align = 2
  21.   '
  22.   ' Méthode 3
  23.   With oPDialog.getControl("Label3")
  24.     .Text = "Valable jusqu'au"
  25.     .Model.Align = 1 'centré
  26.   End With
  27.   '
  28.   With oPDialog.getControl("Label4")
  29.     .Text = "Catégorie"
  30.     .Model.Align = 1 'centré
  31.   End With
  32.   '
  33.   oPDialog.setTitle("Carte du club") ' Titre boîte dialogue
  34.   '
  35.   ' Insertion image
  36.   oImage = oPDialog.getControl("ImageControl1")
  37.   Chemin = "file:///C:/Mes tests macros/Exemple Carte Club/"
  38.   Image = "Dialog_031.png"
  39.   CheminImage = Chemin & Image
  40.   oImage.Model.ImageURL = CheminImage
  41.   oImage.Model.ScaleImage = False
  42.   '
  43.   oPDialog.Execute()
  44. End Sub

 

Dans les lignes 35 à 41, nous insérons une image avec l'icône du contrôle picto ImageControl. Pour vos tests il vous faudra d'abord enregistrer l'image dans le répertoire de votre choix, puis modifier l'adresse en ligne 37.

2 remarques concernant le chemin:

On peut très bien regrouper en une ligne chemin et nom de fichier image, mais il est sage de séparer si on a plusieurs fichiers dans un même répertoire.

Ligne 41, l'échelle de l'image n'est pas modifié (False, à gauche). Faites un test avec True (à droite) et des dimensions différentes de ImageControl1. Ce choix est équivalent à Echelle, Oui ou Non, des propriétés de ImageControl

 

suite, page suivante.

 


 


 

Ce site n'est plus mis à jour. Merci aux nombreux visiteurs depuis 2003. Consultez le Wiki LibreOffice.
   

Le tableur Calc par l'exemple : christianwtd@free.fr
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.0 France License.

  .

Site optimisé pour Firefox

Dernière modification : 13/09/2010 à 15h35


Déjà plusieurs visites sur ce site depuis quelque temps (au moins vous et moi)

Compteur non certifié