IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

Comment supprimer le dictionnaire principal de Word en Delphi ?


Sujet :

Delphi

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 21
    Points : 19
    Points
    19
    Par défaut Comment supprimer le dictionnaire principal de Word en Delphi ?
    Bonjour,

    je programme une application qui doit entre autre vérifier et corriger l'orthographe de certains mots. Le problème est que je ne veux pas utiliser le dictionnaire principal de word mais seulement un dictionnaire personnel (créé à partir d'une base de données).

    Comment faire ?

    Merci

    F.V.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 343
    Points : 392
    Points
    392
    Par défaut
    Si je comprends bien, tu incorpores un doc Word (liaison OLE) dans ton pgm Delphi. Le dictionnaire Word c'est un problème de Word pas de Delphi. Donc c'est en faisant un appel OLE aux propriétés de Word que tu changeras le dico.(Si c'est posssible ).
    Les gurus du forum te donnerons (peut-être) la méthode d'appel pour modifier le dico de Word.
    En revanche, si tu veux utiliser TA base de donnée, il me semble que tu vas devoir écrire un analyseur syntaxique, à moins que cette dernière soit compatible Word....
    Bon Code

  3. #3
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Salut,
    Citation Envoyé par F.Victoire
    Comment faire ?
    Et déjà regarder la page cours de Delphi, on y trouve ceci :
    http://nono40.developpez.com/tutorie...rd/correction/

    Vérifie si cela solutionne ton pb.

  4. #4
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 21
    Points : 19
    Points
    19
    Par défaut
    Citation Envoyé par Laurent Dardenne
    Et déjà regarder la page cours de Delphi, on y trouve ceci :
    http://nono40.developpez.com/tutorie...rd/correction/[/url]
    Je trouve à la fin du doc comment obtenir un itérateur sur les langues disponibles et par là sur le champs ActiveSpellingDictionary :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    Langs:=Word.Languages;
        // On va utiliser l'enumérateur de collection fourni
        IEnum:=Langs._NewEnum as IEnumVariant;
        While IEnum.Next(1,Element,Nombre)=S_OK Do
        Begin
          // Indispensable ici de passer par un IDisp intermédiaire...
          IDisp := Element;
     
          Langue := IDisp As Language;
     
          // MAJ de la liste
          With Liste.Items.Add Do
          Begin
            Caption := IntToStr(Langue.ID);
            SubItems.Add(Langue.Name);
            SubItems.Add(Langue.NameLocal);
            If Langue.ActiveSpellingDictionary=Nil
    Mais je ne sais quand même pas comment modifier l'utilisation de ce dictionnaire. J'ai essayer de faire un DELETE mais ça plante à l'éxécution.

  5. #5
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Regarde dans l'aide en ligne d'Office :
    L'exemple suivant montre comment renvoyer le dictionnaire nommé « MyDictionary ».
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CustomDictionaries("MyDictionary")
    Pour définir le dictionnaire d'orthographe personnel de la collection dans lequel les mots nouveaux seront ajoutés, utilisez la propriété ActiveCustomDictionary.

    Une erreur se produit si vous affectez à cette propriété un dictionnaire qui n'est pas un dictionnaire personnel.

    Pour ajouter un dictionnaire dans la collection des dictionnaires personnels actifs, utilisez la méthode Add. Si le nom spécifié par l'argument FileName ne correspond à aucun fichier existant, Word le crée.

    L'exemple suivant montre comment ajouter le fichier « MyCustom.dic » dans la collection des dictionnaires personnels.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CustomDictionaries.Add FileName:="MyCustom.dic"

  6. #6
    Membre à l'essai
    Inscrit en
    Mai 2006
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 21
    Points : 19
    Points
    19
    Par défaut
    Citation Envoyé par Laurent Dardenne
    L'exemple suivant montre comment renvoyer le dictionnaire nommé « MyDictionary ».

    Code :
    CustomDictionaries("MyDictionary"):
    J'ai bien compris votre réponse, mais en fait ce que je veux c'est ne plus utilisé le dictionnaire qu'utilise Word (qui n'est pas un dictionnaire personnel).
    Mon application doit à un moment effectuer une correction orthographique, pas avec tous les mots possibles mais uniquement avec les mots de ma base de données que j'aurais préalablement transformé en dictionnaire principal.

  7. #7
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Là je n'ai pas le temps de me pencher sur le pb, regarde du coté des forums US sur VBA par exemple.
    As-tu fait des recherches sur le net, du type "Delphi and CustomDictionaries" ?

    Que dit l'aide en ligne de Word sur le remplacement du dico principal ?

Discussions similaires

  1. comment supprimer pages blanches dans Word 2010
    Par PRIMESAUTIER dans le forum Word
    Réponses: 5
    Dernier message: 14/07/2012, 12h02
  2. Réponses: 1
    Dernier message: 08/09/2011, 00h24
  3. Réponses: 2
    Dernier message: 11/01/2009, 00h00
  4. Réponses: 2
    Dernier message: 03/02/2008, 12h52
  5. Réponses: 1
    Dernier message: 24/04/2007, 17h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo