Bonjour,
Est que quelqu'un pourrait me dire s'il est possible de justifier un texte, sur la largeur de son choix, dans un RichEdit, et si oui comment ?
D'avance merci
Codial
Bonjour,
Est que quelqu'un pourrait me dire s'il est possible de justifier un texte, sur la largeur de son choix, dans un RichEdit, et si oui comment ?
D'avance merci
Codial
Malheureusement non, parce que le TRichEdit Delphi standard est basé sur la version 1.0 et non pas sur la version 2.0 (utilisation en interne de la DLL "RICHED32.DLL" au lieu de "RICHED20.DLL")
Mais tu peux utiliser le composant TJVRichEdit de la JVCL qui lui sait le faire
Bidouilleuse Delphi
Si comme ça, on peut le faire !!!
Par contre, pas sur que ça tienne la sauvegarde puis le rechargement (SaveToFile/LoadFromFile)
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 procedure Justifier(ARichEdit:TRichEdit); const WM_USER = $400; EM_EXSETSEL = (WM_USER + 55); EM_SETTYPOGRAPHYOPTIONS = (WM_USER + 202); EM_GETTYPOGRAPHYOPTIONS = (WM_USER + 203); TO_ADVANCEDTYPOGRAPHY = $1; mZERO = $0; var x :tparaformat; L :LongInt; cp :charrange; begin x.cbSize := sizeof(x); if ARichEdit.SelLength = 0 then begin cp.cpMin := 0; cp.cpMax := length(ARichEdit.Text); SendMessage(ARichEdit.Handle,EM_EXSETSEL,mZERO,LPARAM(@cp)); end; L := SendMessageA(ARichEdit.Handle,EM_SETTYPOGRAPHYOPTIONS, TO_ADVANCEDTYPOGRAPHY, TO_ADVANCEDTYPOGRAPHY); if L = 1 then begin SendMessageA(ARichEdit.Handle, EM_GETTYPOGRAPHYOPTIONS, mZERO, mZERO); SendMessage(ARichEdit.Handle, EM_GETPARAFORMAT, mZERO, LPARAM(@x)); x.dwMask := PFM_ALIGNMENT; x.wAlignment := PFA_JUSTIFY; SendMessage(ARichEdit.Handle, EM_SETPARAFORMAT, mZERO, lparam(@x)); end; cp.cpMin := 0; cp.cpMax := 0; SendMessage(ARichEdit.Handle,EM_EXSETSEL,mZERO,lparam(@cp)); ARichEdit.WordWrap := true; end; procedure TForm1.Button1Click(Sender: TObject); var FormatParagraphe:PARAFORMAT2; begin Justifier(RichEdit1); end;
Bon dev
Bidouilleuse Delphi
Bonjour,
merci pour les réponses.
J'ai intégré la procédure de waskol dans mon projet test, mais je bute sur PARAFORMAT2 et tparaformat "Identificateur non déclaré".
Il me manque quelque chose?
Cordialement
Bonsoir,
merci beaucoup, je devais rajouter RichEdit dans les uses.
Encore une question:
Peut on paramétrer un RichEdit aux formats portrait et paysage ?
Cordialement
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager