Nombre de pages d'un RichEdit. [Résolu]

portos6926 6 Messages postés dimanche 13 octobre 2013Date d'inscription 30 janvier 2014 Dernière intervention - 13 oct. 2013 à 15:31 - Dernière réponse : sp40 1293 Messages postés mardi 28 octobre 2003Date d'inscriptionContributeurStatut 3 juillet 2015 Dernière intervention
- 16 oct. 2013 à 09:52
Bonjour, tout est dans le titre.

Je veux savoir le nombre de pages contenues dans un RichEdit.

Merci.
Afficher la suite 

Votre réponse

6 réponses

solilog 273 Messages postés samedi 13 juin 2009Date d'inscription 18 avril 2015 Dernière intervention - 13 oct. 2013 à 19:04
0
Merci
Salut,
Ben tu ne peux pas, tRechEdit est un composant visuel, et il n'y a pas de notion de page. Cette notion dépend de ton imprimante, taille et orientation de page.
Désolé :-)
Bon courage.
solilog
Commenter la réponse de solilog
portos6926 6 Messages postés dimanche 13 octobre 2013Date d'inscription 30 janvier 2014 Dernière intervention - 14 oct. 2013 à 16:33
0
Merci
Je pensais qu'il existe une fonction dans l'API WINDOWS.
J'ai trouvé une solution simple. La voici.
Petit commentaire pour solilog : Il y a toujours une solution.


//---------------------------------------------------------------------------------
// La fonction Round ne tiend pas compte de la valeur décimale si celleci est
// inférieur à 0,5 . Si ComptePages retourne (Exemple) 2,3 il faut compter 3 pages
Function ArrondiSup(V : Double) : Integer;
Begin
If Frac(V) > 0 Then
V := Int(V) + 1;
Result := Round(V);
End;
//-------------------------------------------------------------------------------
Function TMainForm.ComptePages : Double;
Var
P, H : Integer;
V : Double;

Begin
// Déplace la barre de défillement verticale en bas du texte
SendMessage(Editor.Handle, WM_VSCROLL, SB_BOTTOM, 0 );
// Renvoi la hauteur totale du canvas en pixels
P:= GetScrollPos(Editor.Handle,SB_VERT);

H:= RichEdit1.ClientHeight;
V := (P + H) / H;
Result := V;
// Si on désir n'avoir que des entiers (2,3 => 3 pages)
Result := ArrondiSup(V);
End;
//------------------------------------------------------------------------------
sp40 1293 Messages postés mardi 28 octobre 2003Date d'inscriptionContributeurStatut 3 juillet 2015 Dernière intervention - 14 oct. 2013 à 16:50
mouiiiiii, enfin, ça dépend aussi de la configuration de ton imprimante (marges, zones d'impression, taille du papier)...
Commenter la réponse de portos6926
dubois77 692 Messages postés jeudi 17 avril 2008Date d'inscription 14 septembre 2018 Dernière intervention - 15 oct. 2013 à 07:45
0
Merci
Bonjour
D'accord avec Simon, cette procédure ne doit pas donner le nombre de pages réellement imprimées
Commenter la réponse de dubois77
portos6926 6 Messages postés dimanche 13 octobre 2013Date d'inscription 30 janvier 2014 Dernière intervention - 15 oct. 2013 à 23:59
0
Merci
Cela n'a rien à voir avec l'imprimante. Le but est de connaitre le nombre de pages à l'écran (dans le RichEdit);

J'ai pourtant bien mis la balise [RESOLU], et cette méthode fonctionne très bien.
sp40 1293 Messages postés mardi 28 octobre 2003Date d'inscriptionContributeurStatut 3 juillet 2015 Dernière intervention - 16 oct. 2013 à 09:52
Autant pour moi...
Commenter la réponse de portos6926

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.