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

MFC Discussion :

l'impression personnalisée par MFC


Sujet :

MFC

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Par défaut l'impression personnalisée par MFC
    Bonjour,

    Qui peut m'aider dans un problème de gestion des impressions d'un miniéditeur basé sur une application MFC SDI utilisant CEditView ?
    Dès que je crée une fonction membre OnPrint de la Classe CMonAppliView, je perds les données qui sont stockées dans le contrôle CEdit du document associé à la vue. C'est idiot : je bute sur la définition, l'initialisation des pointeurs de GetEditCtrl pour écupèrer dans un CString le texte contenu dans le document. Je touche au but ! Je ne suis pas loin mais je fatigue.

    J'ai analysé superpad de MSN, en transposant, sans succès !

    J'ai un exemple sur un livre "Le tout en poche" de Mickey William (Campus Press). Dès que je crée la fonction membre OnPrint, je perds la main sur le mécanisme d'impression par défaut !

    J'ai récupéré un exemple d'impression d'un contrôle CEdit mais en cherchant à lire le string, je n'arrive pas à allouer les pointeurs correctement.

    Merci de m'aider.

  2. #2
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 526
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 526
    Par défaut
    Citation Envoyé par rgimilio Voir le message
    Dès que je crée une fonction membre OnPrint de la Classe CMonAppliView, je perds les données qui sont stockées dans le contrôle CEdit du document associé à la vue. C'est idiot : je bute sur la définition, l'initialisation des pointeurs de GetEditCtrl pour écupèrer dans un CString le texte contenu dans le document. Je touche au but ! Je ne suis pas loin mais je fatigue.
    je ne comprends vraiment pas ton problème : si tu veux mémoriser du texte tu mets cela dans une CStringList CArray ou une simple CString.
    Si tu veux que ta classe vue communique avec la classe doc il suffit d'appeler GetDocument()
    Je n'ai rien compris au problème

    je bute sur la définition, l'initialisation des pointeurs de GetEditCtrl pour écupèrer dans un CString le texte contenu dans le document.
    j'utilise constamment GetWindowText() cela fonctionne parfaitement

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Par défaut J'ai trouvé
    Citation Envoyé par rgimilio Voir le message
    Bonjour,

    Qui peut m'aider dans un problème de gestion des impressions d'un miniéditeur basé sur une application MFC SDI utilisant CEditView ?
    Dès que je crée une fonction membre OnPrint de la Classe CMonAppliView, je perds les données qui sont stockées dans le contrôle CEdit du document associé à la vue. C'est idiot : je bute sur la définition, l'initialisation des pointeurs de GetEditCtrl pour écupèrer dans un CString le texte contenu dans le document. Je touche au but ! Je ne suis pas loin mais je fatigue.

    J'ai analysé superpad de MSN, en transposant, sans succès !

    J'ai un exemple sur un livre "Le tout en poche" de Mickey William (Campus Press). Dès que je crée la fonction membre OnPrint, je perds la main sur le mécanisme d'impression par défaut !

    J'ai récupéré un exemple d'impression d'un contrôle CEdit mais en cherchant à lire le string, je n'arrive pas à allouer les pointeurs correctement.

    Merci de m'aider.
    Dans la classe dérivée de CEditView (ici CEdiparView), il faut entièrement programmer les fonctions membres OnBeginPrinting et OnPrint comme indiqué dans l'exemple tiré de CodeProject http://www.codeproject.com/KB/printi...tlongtext.aspx. Cet exemple programme un dérivé de CFormView. Dans votre classe dérivée de CEditView, déclarer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CString text;
       CEdit& m_ctrlText = GetEditCtrl();
       m_ctrlText.GetWindowText(text);
    le texte contenu dans le document se trouve recopié dans le CString text.
    On peut le vérifier en posant un point d'arrêt et en lançant le débogueur.

    Après, à vous de jouer !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. prise en charge XML par MFC
    Par Nicolas69 dans le forum MFC
    Réponses: 2
    Dernier message: 09/09/2006, 16h29
  2. impression automatique en mfc
    Par nikus_knx dans le forum MFC
    Réponses: 3
    Dernier message: 10/04/2006, 11h38
  3. Impression personnalisée
    Par stof dans le forum MFC
    Réponses: 45
    Dernier message: 31/08/2005, 10h53
  4. Page personnalisée par l'utilisateur dans l'application
    Par Rodrigue dans le forum C++Builder
    Réponses: 5
    Dernier message: 26/05/2005, 17h45
  5. impression PS par dll excel
    Par wazaa dans le forum MFC
    Réponses: 3
    Dernier message: 27/04/2005, 15h00

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