je souhaite afficher du texte (avec mise en forme) et des images, dans
une fenêtre sous vc++ 6.0, sans utiliser les mfc.
Actuellement j'utilise la fonction TextOut pour afficher mon texte.
Est-ce la bonne méthode ?
Mon affichage (texte + image) étant long, il dépasse la hauteur de la
fenêtre. Les ascenceurs sont la pour cela, mais la fonction TextOut
est limitée en hauteur.
Est-ce que je dois moi-même gérer l'affichage, afin de ne prendre que
les lignes visibles selon la position des ascenceurs ? Est-ce qu'il
existe une meilleur solution ?
Merci pour vos réponses.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Manuel Leclerc
splipon a écrit :
je souhaite afficher du texte (avec mise en forme) et des images, dans une fenêtre sous vc++ 6.0, sans utiliser les mfc. Actuellement j'utilise la fonction TextOut pour afficher mon texte.
Est-ce la bonne méthode ?
Aucune idée. TextOut permet d'afficher du texte, pas des images. Si tu sais générer un format RTF, je crois que tu pourrais aussi demander à un contrôle de type RichEdit de faire le boulot, mais je ne sais pas comment on fait.
Mon affichage (texte + image) étant long, il dépasse la hauteur de la fenêtre. Les ascenceurs sont la pour cela, mais la fonction TextOut est limitée en hauteur.
Est-ce que je dois moi-même gérer l'affichage, afin de ne prendre que les lignes visibles selon la position des ascenceurs ? Est-ce qu'il existe une meilleur solution ?
Deux solutions :
1) maintenir toi même une structure de données indiquant quelle est la zone actuellement visible et peindre en conséquence
2) bidouille : créer une fenêtre fille et _déplacer_ cette fenêtre en fonction des demandes de scrolling.
Dans les _deux_ cas, tu devrais tenir compte du rectangle effectivement à peindre pour éviter de dérouler tout algorithme de peinture, et surtout pour éviter d'appeler Win32 pour qu'il calcule un dessin qui sera clipé. Ceci dit, sur une machine pas trop ancienne, c'est parfois difficile de constater une différence entre une version optimisée du paint et une version qui ne se pose aucune question. Ca dépends un peu de ce que tu veux faire.
splipon a écrit :
je souhaite afficher du texte (avec mise en forme)
et des images, dans une fenêtre sous vc++ 6.0, sans
utiliser les mfc. Actuellement j'utilise la fonction
TextOut pour afficher mon texte.
Est-ce la bonne méthode ?
Aucune idée. TextOut permet d'afficher du texte, pas
des images. Si tu sais générer un format RTF, je crois
que tu pourrais aussi demander à un contrôle de type
RichEdit de faire le boulot, mais je ne sais pas
comment on fait.
Mon affichage (texte + image) étant long, il dépasse la
hauteur de la fenêtre. Les ascenceurs sont la pour cela,
mais la fonction TextOut est limitée en hauteur.
Est-ce que je dois moi-même gérer l'affichage, afin de ne
prendre que les lignes visibles selon la position des
ascenceurs ? Est-ce qu'il existe une meilleur solution ?
Deux solutions :
1) maintenir toi même une structure de données indiquant
quelle est la zone actuellement visible et peindre en
conséquence
2) bidouille : créer une fenêtre fille et _déplacer_ cette
fenêtre en fonction des demandes de scrolling.
Dans les _deux_ cas, tu devrais tenir compte du rectangle
effectivement à peindre pour éviter de dérouler tout
algorithme de peinture, et surtout pour éviter d'appeler
Win32 pour qu'il calcule un dessin qui sera clipé. Ceci dit,
sur une machine pas trop ancienne, c'est parfois difficile
de constater une différence entre une version optimisée du
paint et une version qui ne se pose aucune question. Ca dépends
un peu de ce que tu veux faire.
je souhaite afficher du texte (avec mise en forme) et des images, dans une fenêtre sous vc++ 6.0, sans utiliser les mfc. Actuellement j'utilise la fonction TextOut pour afficher mon texte.
Est-ce la bonne méthode ?
Aucune idée. TextOut permet d'afficher du texte, pas des images. Si tu sais générer un format RTF, je crois que tu pourrais aussi demander à un contrôle de type RichEdit de faire le boulot, mais je ne sais pas comment on fait.
Mon affichage (texte + image) étant long, il dépasse la hauteur de la fenêtre. Les ascenceurs sont la pour cela, mais la fonction TextOut est limitée en hauteur.
Est-ce que je dois moi-même gérer l'affichage, afin de ne prendre que les lignes visibles selon la position des ascenceurs ? Est-ce qu'il existe une meilleur solution ?
Deux solutions :
1) maintenir toi même une structure de données indiquant quelle est la zone actuellement visible et peindre en conséquence
2) bidouille : créer une fenêtre fille et _déplacer_ cette fenêtre en fonction des demandes de scrolling.
Dans les _deux_ cas, tu devrais tenir compte du rectangle effectivement à peindre pour éviter de dérouler tout algorithme de peinture, et surtout pour éviter d'appeler Win32 pour qu'il calcule un dessin qui sera clipé. Ceci dit, sur une machine pas trop ancienne, c'est parfois difficile de constater une différence entre une version optimisée du paint et une version qui ne se pose aucune question. Ca dépends un peu de ce que tu veux faire.
patrox
La fonction que tu cherche s'appelle DrawText, oui il faudrai gerer les ascenceurs toi meme.
Ceci dit un controle RTF ou EDIT gere presque tout tout seul ( CreateWindow pour le creer )
pat.
La fonction que tu cherche s'appelle DrawText, oui il faudrai gerer les
ascenceurs toi meme.
Ceci dit un controle RTF ou EDIT gere presque tout tout seul ( CreateWindow
pour le creer )
La fonction que tu cherche s'appelle DrawText, oui il faudrai gerer les ascenceurs toi meme.
Ceci dit un controle RTF ou EDIT gere presque tout tout seul ( CreateWindow pour le creer )
pat.
Quentin Pouplard
(splipon) wrote:
Bonjour,
je souhaite afficher du texte (avec mise en forme) et des images, dans une fenêtre sous vc++ 6.0, sans utiliser les mfc. Actuellement j'utilise la fonction TextOut pour afficher mon texte.
Est-ce la bonne méthode ?
Etrange
Mon affichage (texte + image) étant long, il dépasse la hauteur de la fenêtre. Les ascenceurs sont la pour cela, mais la fonction TextOut est limitée en hauteur.
La fonction textout est assez bas niveau et permet en effet d'afficher du texte... mais sous windows tu as les controles, genre HTML, RTF, texte... profite en!
Est-ce que je dois moi-même gérer l'affichage, afin de ne prendre que les lignes visibles selon la position des ascenceurs ? Est-ce qu'il existe une meilleur solution ?
je souhaite afficher du texte (avec mise en forme) et des images, dans
une fenêtre sous vc++ 6.0, sans utiliser les mfc.
Actuellement j'utilise la fonction TextOut pour afficher mon texte.
Est-ce la bonne méthode ?
Etrange
Mon affichage (texte + image) étant long, il dépasse la hauteur de la
fenêtre. Les ascenceurs sont la pour cela, mais la fonction TextOut
est limitée en hauteur.
La fonction textout est assez bas niveau et permet en effet d'afficher
du texte... mais sous windows tu as les controles, genre HTML, RTF,
texte... profite en!
Est-ce que je dois moi-même gérer l'affichage, afin de ne prendre que
les lignes visibles selon la position des ascenceurs ? Est-ce qu'il
existe une meilleur solution ?
je souhaite afficher du texte (avec mise en forme) et des images, dans une fenêtre sous vc++ 6.0, sans utiliser les mfc. Actuellement j'utilise la fonction TextOut pour afficher mon texte.
Est-ce la bonne méthode ?
Etrange
Mon affichage (texte + image) étant long, il dépasse la hauteur de la fenêtre. Les ascenceurs sont la pour cela, mais la fonction TextOut est limitée en hauteur.
La fonction textout est assez bas niveau et permet en effet d'afficher du texte... mais sous windows tu as les controles, genre HTML, RTF, texte... profite en!
Est-ce que je dois moi-même gérer l'affichage, afin de ne prendre que les lignes visibles selon la position des ascenceurs ? Est-ce qu'il existe une meilleur solution ?