API Windows : soulignement dans un RichEdit

osoumaya Messages postés 5 Statut Membre -  
MANDIN Messages postés 4 Date d'inscription   Statut Membre -
bonjour tous le monde
je créé une application MDI avec des richEdit et une boite liée à une DLL , dans le but de verifier si les mot taper sur l'edit existent dans une librairie de mot "un dictionnaire", tous marche "la verification des mots dans le dico " , à part que j'aimerai souligné les mots qui n'existent pas dans le dictionnaire, j'ai cherché un peut partout j'ai pas trouvé une methode qui marche.
je travail avec le language C, et c'est de la programmation Windows.
merci d'avance .

2 réponses

  1. MANDIN Messages postés 4 Date d'inscription   Statut Membre
     
    Je ne sais pas comment effectuer le soulignement mais voici un code qui permet de modifier la couleur du fond d'un mot selectionné.
    CHARFORMAT2 est composé de
    	cbSize est un entier sans signe            //Type C : UINT
    	dwMask est entier                       //Type C : DWORD
    	dwEffects est entier                    //Type C : DWORD
    	yHeight est entier                      //Type C : LONG
    	yOffset est entier                      //Type C : LONG
    	crTextColor est un entier sans signe       //Type C : COLORREF
    	bCharSet est chaîne ASCIIZ sur 2        //Type C : BYTE
    	bPitchAndFamily est chaîne ASCIIZ sur 2 //Type C : BYTE
    	szFaceName est chaîne ASCIIZ sur 32     //Type C : TCHAR
    	wWeight est un entier sur 2 octets         //Type C : WORD
    	sSpacing est un entier sur 2 octets        //Type C : SHORT
    	crBackColor est un entier sans signe       //Type C : COLORREF
    	lid est un entier sans signe               //Type C : LCID
    	dwReserved est entier                   //Type C : DWORD
    	sStyle est un entier sur 2 octets          //Type C : SHORT
    	wKerning est un entier sur 2 octets        //Type C : WORD
    	bUnderlineType est caractère            //Type C : BYTE
    	bAnimation est caractère                //Type C : BYTE
    	bRevAuthor est caractère                //Type C : BYTE
    	bReserved1 est caractère                //Type C : BYTE
    FIN
    
    cstCFM_BACKCOLOR    est entier = 0x04000000
    cstCFM_COLOR        est entier = 0x40000000
    
    cstEM_GETCHARFORMAT est entier = 1082
    cstEM_SETCHARFORMAT est entier = 1092
    
    cstSCF_SELECTION    est entier = 1
    
    nColor est un entier sans signe
    nColor=_TextColor; CHARFORMAT2.crTextColor = nColor
    nColor=_BackColor; CHARFORMAT2.crBackColor = nColor
    
    CHARFORMAT2.cbSize = 84
    CHARFORMAT2.dwMask = cstCFM_COLOR+cstCFM_BACKCOLOR
    
    SendMessage(Handle(_ChampRTF),cstEM_SETCHARFORMAT,cstSCF_SELECTION,&CHARFORMAT2)
    
    


    Je suis gourmand également des possibilités RTF
    0
  2. MANDIN Messages postés 4 Date d'inscription   Statut Membre
     
    Je ne sais pas comment effectuer le soulignement mais voici un code qui permet de modifier la couleur du fond d'un mot selectionné.
    CHARFORMAT2 est composé de
    	cbSize est un entier sans signe            //Type C : UINT
    	dwMask est entier                       //Type C : DWORD
    	dwEffects est entier                    //Type C : DWORD
    	yHeight est entier                      //Type C : LONG
    	yOffset est entier                      //Type C : LONG
    	crTextColor est un entier sans signe       //Type C : COLORREF
    	bCharSet est chaîne ASCIIZ sur 2        //Type C : BYTE
    	bPitchAndFamily est chaîne ASCIIZ sur 2 //Type C : BYTE
    	szFaceName est chaîne ASCIIZ sur 32     //Type C : TCHAR
    	wWeight est un entier sur 2 octets         //Type C : WORD
    	sSpacing est un entier sur 2 octets        //Type C : SHORT
    	crBackColor est un entier sans signe       //Type C : COLORREF
    	lid est un entier sans signe               //Type C : LCID
    	dwReserved est entier                   //Type C : DWORD
    	sStyle est un entier sur 2 octets          //Type C : SHORT
    	wKerning est un entier sur 2 octets        //Type C : WORD
    	bUnderlineType est caractère            //Type C : BYTE
    	bAnimation est caractère                //Type C : BYTE
    	bRevAuthor est caractère                //Type C : BYTE
    	bReserved1 est caractère                //Type C : BYTE
    FIN
    
    cstCFM_BACKCOLOR    est entier = 0x04000000
    cstCFM_COLOR        est entier = 0x40000000
    
    cstEM_GETCHARFORMAT est entier = 1082
    cstEM_SETCHARFORMAT est entier = 1092
    
    cstSCF_SELECTION    est entier = 1
    
    nColor est un entier sans signe
    nColor=_TextColor; CHARFORMAT2.crTextColor = nColor
    nColor=_BackColor; CHARFORMAT2.crBackColor = nColor
    
    CHARFORMAT2.cbSize = 84
    CHARFORMAT2.dwMask = cstCFM_COLOR+cstCFM_BACKCOLOR
    
    SendMessage(Handle(_ChampRTF),cstEM_SETCHARFORMAT,cstSCF_SELECTION,&CHARFORMAT2)
    
    


    Je suis gourmand également des possibilités RTF
    0