Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1370 connectés 

 


Dernière réponse
Sujet : question toute bête sur les MFC (C++)
El_gringo Merci les jeunes (enfin je sais pas mais bon)
j'devrai m'en tirer sans pb grâce à tout ça...

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
El_gringo Merci les jeunes (enfin je sais pas mais bon)
j'devrai m'en tirer sans pb grâce à tout ça...
darthguy

Citation :

Toi aussi tu fais UpdateData() et non pas UpdateData(TRUE) ? Ya que comme ça que j'arrive à m'en souvenir :-)


 
Heu ouaip.  
Et j'ai mis sacrement longtemps a le memoriser ! ;)

n0mad Arfff, darthguy copieur :-)))
 
Toi aussi tu fais UpdateData() et non pas UpdateData(TRUE) ? Ya que comme ça que j'arrive à m'en souvenir :-)

 

[edit]--Message édité par n0mad--[/edit]

n0mad darthguy et moi te l'ont déjà dit : "tu coches multiline dans les propietes de ton CEdit"
 
Ensuite tu utilises le wizard pour associer une CString à ton CEdit (par exemple CString m_MonCEdit)  
 
Enfin, pour ajouter la chaine CString nouvelleLigne à ton CEdit, tu fais:

Code :
  1. UpdateData();
  2. m_MonCEdit += nouvelleLigne;
  3. UpdateData(FALSE);


 
[/html]

darthguy Si t'as appele ta variable m_osChaine et que tu tapes un truc du genre :
 
m_osChaine = _T("premiere ligne\r\nSeconde ligne" );
UpdateData(FALSE);
 
ca passe. Encore une fois, uniquement si t'as coche la case multiline. Sinon, je crois qu'il t'affiche les \r\n.
 
J'ai pas teste avec SetWindowText.
Si tu veux rajouter des lignes sans que ca n'efface ce qu'il y avait avant, tu peux faire un truc du genre :
 
UpdateData();
m_osChaine += _T("\r\nAutre ligne" );
UpdateData(FALSE);
El_gringo ha, en rajoutant un membre value sur l'ID de mon CEDIT !?
mais avec ça, c pareil, ça me dit pas comment aller à la ligne, y va tout fouttre sur une seule ligne !
darthguy Tu utilises pas le class wizard ? (Ctrl+W)
El_gringo oula, j'connais pas les variables DDX moi...
darthguy Tu peux aussi passer par une variable DDX.
 
Comme ca tu te sers d'un CString et le tour est joue. C'est vraiment ce qu'il y a de plus simple.
 
Mais il faut de toutes manieres que tu coches multiline dans les propietes de ton CEdit.
El_gringo ouais, mais une CLISTBOX c pas du tout pareil...
Moi g besoin d'un champ de texte (il faut par exemple que l'utilisateur puisse sélectionner du texte affiché dans cette zone, puisse le copier !)
g besoin d'un CEDIT, donc tu n'sais pas comment on fait pour aller à la ligne avec ce type de contrôle !?
n0mad On peut mettre plusieurs lignes dans un CEdit en cochant une option (multiline ou Want Return) ceci dit ce n'est pas la bonne méthode et il vaut mieux utiliser une CListBox à la place, ça sera plus simple.
 
Ensuite tu utilises CListBox::AddString() pour ajouter une nouvelle ligne.
El_gringo Voila, y parait que les MFC ne seront bientot plus utilisées, mais tant pis, moi, je suis en tain d'apprendre à m'en servir...de toute façon g pas d'autres outils.
 
Je voudrais savoir comment on fait pour aller à la ligne dans un objet CEDIT.
moi pr y afficher du texte, je fait un .SetWindowText("ma chaine" ); mais avec ça, chaque ligne que j'insére écrase la précédante...et tout ça toujours sur la 1ere ligne.
 
Un ancien des MFC, s'il vous plait...?

Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR