[MFC] Interactions avec l'utilisateur

Interactions avec l'utilisateur [MFC] - Programmation

Marsh Posté le 26-02-2002 à 20:36:01    

Pour apprendre les MFC, j'ai fait une application qui utilisait un peu out ce que je voulais : un convertisseur euro-francs !
J'ai donc un choix entre les deux sens de conversion. Une CEdit de la valeur que l'utilisateur entre, un bouton qui effectue la conversion et enfin une CEdit qui affiche le résultat.
 
Ma fonction d'appuie sur le bouton est :
 
//m_valeur est la valeur contenue dans la CEdit accessible par l'utilisateur
//m_valeur_fin est la valeur suite à la conversion relié à la CEdit du résultat  
//m_sens est le sens de conversion : 0 pour fr->eu, 1 pour eu->fr
 
void CConvertorDlg::OnConversion()  
{
 char buffer[15];
 CEdit* m_pvaleurfinale;
 
 UpdateData(true); //  <-- Au fait, à quoi ça sert ?  
 if(m_valeur==0)    
  return;
 if(m_sens==0)
  {
  m_valeur_fin=m_valeur/6.55976f;
  sprintf(buffer,"%.2f",m_valeur_fin);
  m_pvaleurfin = (CEdit*)GetDlgItemIDC_VALEUR_FIN);
  m_pvaleurfin->SetWindowText(buffer);
  return;
  }
 m_valeur_fin=m_valeur*6.55976f;
 sprintf(buffer,"%.2f",m_valeur_fin);
 m_pvaleurfin = (CEdit*) GetDlgItem(IDC_VALEUR_FIN);
 m_pvaleurfin->SetWindowText(buffer);
 
 return;
 
}
 
 
Voilà ! Maintenant, j'aimerais savoir si je suis obligé de passer par un pointeur sur ma boite résultat. Ne peut-on pas updater les CEdit qui sont à l'écran par leur valeur de "document" ?  (c'est à dire que la CEdit du résultat prendrait directement la valeur que j'ai mis dans m_valeur_fin ( qui lui est reliée ) par une fonction sans passer par les pointeurs)
 
2ème question : lorsque je tape mon chiffre, j'aimerais que quand j'appuies sur Enter, le prog "appuie" tout seul dans le bouton de conversion, car là, il sort du prog quand j'appuie sur Enter. Je suis obligé d'appuyer moi même ( avec la souris sur le bouton de conversion pour que ça marche ).
 
3ème question : je n'arrive pas à mettre de "." dans la valeur que je veux convertir ?! je ne peux convertir que des entiers, alors que m_valeur est déclaré en float. Peut-être est_ce dans les propriétés de la CEdit ?...comment faire ?
 
Merci de votre aide !  
 
Joel
 
ps : vous pouvez récupérer les sources de mon truc ici ( pour que vous voyez exactement tous les pbs ):  
http://perso.club-internet.fr/torpe23/convertor.zip

 

[jfdsdjhfuetppo]--Message édité par torpe23--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 26-02-2002 à 20:36:01   

Reply

Marsh Posté le 27-02-2002 à 00:59:04    

:bounce:

Reply

Marsh Posté le 27-02-2002 à 01:30:26    

en fait, c'est good ! J'ai réussi à tout arranger !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed