begin process at 2010 03 20 02:34:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

WxDevcpp_Comment manier des données saisies dans une editBox?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

WxDevcpp_Comment manier des données saisies dans une editBox?

lundi 17 octobre 2005 à 12:10:03 | WxDevcpp_Comment manier des données saisies dans une editBox?

AfroDurf

Bonjour à tous,

je suis nouveau sur ce site. Je me lance dans l'apprentissage de la programmation d'application windows. Pour apprendre les bases j'aime avoir un projet concret à réaliser. Dans le cas qui nous concerne, je souhait faire une application très simpliste qui me permettrait de calculer les annuités en fonction d'un montant d'investissement d'un % d'emprunt et d'une durée (en fait l'idée est que ce soit un module d'un soft plus large pour mon taffe). Chose importante je pense, j'ai décidé d'utiliser WXDevcpp!!

Bref, après cette présentation sommaire, je vous expose mon problème. J'ai donc créer un projet. Ma fenêtre est ok, les menus sont pratiquement fait. Mais je bloque sur un point (non négligeable dans mon cas) car j'ai mis 3 editbox (case blanche permettant la saisie) pour saisir le pourcentage, la durée, et le montant d'investissement et deux supplémentaires (après un clike sur un bouton quelconque) pour afficher le résultat soit l'annuité et le coef pour le calcul. Bref, je n'arrive pas a savoir comment je dois faire pour récupérer les valeur tapée dans les 3 editbox pour ensuité réaliser les calculs et afficher les résultats dans les deux autres edit box.

j'avais essayer des choses du type int Val1=wxEdit1 (mais ça marche pas!! je sais je suis naif :-p)

Voilà j'espère avoir été clair et je vous remercie par avancde de votre aide.
lundi 17 octobre 2005 à 12:46:10 | Re : WxDevcpp_Comment manier des données saisies dans une editBox?

fredcl

Bonjour,

// déclaration d'une variable de type wxString
wxString tmp;

// Récupération de la valeur d'un wxTextCtrl
tmp = wxEdit1->GetValue();

// Pour Mettre une valeur directement dans un wxTextCtrl on utilise SetValue

wxEdit1->SetValue(_T("ma valeur"));

Cordialement

Fred Cailleau-Lepetit (http://cfred.free.fr)

lundi 17 octobre 2005 à 14:00:28 | Re : WxDevcpp_Comment manier des données saisies dans une editBox?

AfroDurf

Merci beaucoup de ta réponse Fredcl!!
Pour simplifier et me faciliter la compréhension j'ai mis 2 txtctrl dans lesquels je pourrais saisir 1 chiffre dans chaque et le 3eme txtctrl affiche la somme des 2 premières saisies.


Mais je bloque toujours car voici la partie du code incriminé :

/*  
 * WxEdit1Enter  //Mon premier txtctrl pour saisir le premier chiffre
 */
void AfroDurfFrm::WxEdit1Enter(wxCommandEvent& event)
{
 // insert your code here
     wxString tmp;
 tmp = wxEdit1->GetValue();
//La compilation s'arrête ici mais je ne vois pas ou se situe l'erreur.
}

/*
 * WxEdit2Enter    //Mon second txtctrl pour saisir le second chiffre
 */
void AfroDurfFrm::WxEdit2Enter(wxCommandEvent& event)
{
     wxString tmp1;
        tmp1 = wxEdit2->GetValue();
}

/*
 * WxEdit3Enter //Mon troisieme  txtctrl qui devrait afficher la somme des deux
 */
void AfroDurfFrm::WxEdit3Enter(wxCommandEvent& event)
{

 wxEdit3->SetValue(_T("tmp+tmp1"));
 }

Voilà, jespère que mes questions ne vous paraissent pas trop idiotes ^_^

Merci!!

lundi 17 octobre 2005 à 14:42:43 | Re : WxDevcpp_Comment manier des données saisies dans une editBox?

fredcl

Bonjour,

Pour avoir une réponse précise il faudrait voir le texte du message d'erreur.
Mais je pense que c'est plutôt un Warning du genre tmp est affecté mais non utilisée.
Idem à prioris pour tmp1.
De plus " wxEdit3->SetValue(_T("tmp+tmp1"));" ne donneras pas ce que tu veux mais simplement un wxTextCtrl contenant le texte (à la lettre près) : "tmp+tmp1"

il faudrait plutôt écrire :

void AfroDurfFrm::WxEdit3Enter(wxCommandEvent& event)
{
   wxString tmp;
   double dTmp1, dTmp2;

   tmp = wxEdit1->GetValue();
   if (tmp.ToDouble(dTmp1))
   {
      tmp = wxEdit2->GetValue();
      if (tmp.ToDouble(dTmp2))
      {
         wxEdit3->SetValue(wxString::Format(_T("%d"), dTmp1 + dTmp2));

      }
   }
 }
Cordialement

Fred Cailleau-Lepetit (http://cfred.free.fr)


lundi 17 octobre 2005 à 15:18:31 | Re : WxDevcpp_Comment manier des données saisies dans une editBox?

AfroDurf

Hé bien voici le message d'erreur :

123 C:\Dev-Cpp\projet\AfroDurfFrm.cpp `wxEdit1' undeclared (first use this function)

Je ne vois pas ou declarer mon wxEdit vu qu'il est créer depuis l'interface graphique de WxDevcpp!!!

ps : Merci pour l'édit3 je le test dès que j'ai résolu mon problème à la compilation.
lundi 17 octobre 2005 à 15:32:25 | Re : WxDevcpp_Comment manier des données saisies dans une editBox?

AfroDurf

Le problème concernant ma compilation vient du fait que l'on doit écrire Wxedit et non pas wxedit (majuscule). Je ne pensais pas que cela importait les majuscule en programmation.

Bref, le problème c'est déplacé ici en ligne 149 sur la base de ta proposion :

if (tmp.ToDouble(dTmp1)) // il s'arrête sur cette ligne avec le message d'erreur ci-dessous

149 C:\Dev-Cpp\projet\AfroDurfFrm.cpp no matching function for call to `wxString::ToDouble(double&)'
lundi 17 octobre 2005 à 15:49:31 | Re : WxDevcpp_Comment manier des données saisies dans une editBox?

fredcl

Bonjour,

exact un petite erreur de ma part il faut donner l'adresse de la variable soit :

...

   if (tmp.ToDouble(&dTmp1))
   {
      tmp = wxEdit2->GetValue();
      if (tmp.ToDouble(&dTmp2))
...

Pour répondre à ta question sur les majuscules : le C ou le C++ est sensible à la case, donc W est différent de w. Une variable nommée tmp est différente de celle nommée Tmp ou TMP.

Cordialement

Fred Cailleau-Lepetit (http://cfred.free.fr)



lundi 17 octobre 2005 à 15:59:10 | Re : WxDevcpp_Comment manier des données saisies dans une editBox?

AfroDurf

Merci de toute tes réponses, j'espère ne pas abuser de ton temps. Voilà j'ai bien fait tout les modifications, le code devenant :

/*
 * WxEdit1Enter
 */
void AfroDurfFrm::WxEdit1Enter(wxCommandEvent& event)
{
 // insert your code here
  // déclaration d'une variable de type wxString
     wxString tmp1;

// Récupération de la valeur d'un wxTextCtrl
                tmp1 = WxEdit1->GetValue();
}

/*
 * WxEdit2Enter
 */
void AfroDurfFrm::WxEdit2Enter(wxCommandEvent& event)
{
 // insert your code here
 // déclaration d'une variable de type wxString
     wxString tmp2;

// Récupération de la valeur d'un wxTextCtrl
                tmp2 = WxEdit2->GetValue();
}

/*
 * WxEdit3Enter
 */
void AfroDurfFrm::WxEdit3Enter(wxCommandEvent& event)
{
   wxString tmp;
   double dTmp1, dTmp2;

   tmp = WxEdit1->GetValue();
   if (tmp.ToDouble(&dTmp1))
   {
      tmp = WxEdit2->GetValue();
      if (tmp.ToDouble(&dTmp2))
      {
         WxEdit3->SetValue(wxString::Format(_T("%d"), dTmp1 + dTmp2));

      }
   }
 }

Hé bien là plus rien ne marche LINK ERROR et il s'arrête de compiler!!!

Question subsidiaire :

WxDevcpp possède son propre language ou devrais réapprendre un autres language si je change de logiciel (GTK, Qt etc...)?

lundi 17 octobre 2005 à 17:50:07 | Re : WxDevcpp_Comment manier des données saisies dans une editBox?

fredcl

Bonjour,

Encore une fois, le texte précis du message d'erreur est nécessaire pour te répondre.
Essaye de tous recompiler (Executer/Tout reconstruire). j'ai souvent ce problème avec Dev-Cpp quand je modifie un fichier d'entête (.h).
wxDev-Cpp utilise le C/C++ comme language (en fait il utilise le compilateur GCC) en plus ce fork de Dev-Cpp est spécialisé dans le framework wxWidgets, mais il me semble en ajoutant une surcouche, ce qui à mon humble avis n'est pas vraiment le pied!
Pour ma part j'utilise l'original Dev-Cpp (http://www.bloodshed.net/dev) avec mes devpacks de wxWidgets 2.6.2 (http://cfred.free.fr). Pour finir ce que tu cites, "GTK, QT, ...", ne sont pas des langages mais des "framework" (désolé un équivalent en français ne me vient pas rapidement à l'esprit, mais si quelqu'un en à un je suis prenneur)

Cordialement

Fred Cailleau-Lepetit (http://cfred.free.fr)


mardi 18 octobre 2005 à 08:56:57 | Re : WxDevcpp_Comment manier des données saisies dans une editBox?

AfroDurf

Re-bonjour,

voici le message d'erreur mais y en as au moins 50 lignes :

  [Linker error] undefined reference to `wxFrameNameStr'
  [Linker error] undefined reference to `wxFrame::~wxFrame()'
  [Linker error] undefined reference to `wxFrameNameStr'
  [Linker error] undefined reference to `wxWindowBase::Close(bool)' etc.....

J'ai essayé toute la soirée d'hier sans succès. tu sais ou je pourrais. Eventuellement trouver des cours ou tuto avec des exemples sur WXdev car je ne trouve pratiquement rien et pratiquement aucune source.


tu me conseils plutôt de faire ma prog avec Devcpp classique et les devpack?

Merci par avance.



1 2

Cette discussion est classée dans : données, editbox, saisies, wxdevcpp, manier


Répondre à ce message

Sujets en rapport avec ce message

EditBox vc++6.0 [ par imanedaoudi ] bonjour,je veux écrire des valeurs dans un fichier txt à partir d'un boutton de controle puis, récupérer ces données et les afficher dans EditBox en a Problème : Récupération des données d'un Buffer pour mettre dans une EditBox [ par Memerosti ] BonjourMon problème est le suivant : J'ai ouvert un fichier, lu ses données, et jusque là ça va. Mais ensuite je voudrais récupérer ces données, pour editbox, lecture des données ??? [ par gege1024 ] quel moyen a t'on pour recuperer les lignes d'un editbox ?j'ai rempli un editbox avec plusieurs fichiers (multiligne)et je desire faire un traitement Logiciel transformant un fichier texte en base de données Access [ par makandja ] Salut à tous, Voilà j'aimerais réaliser un module logiciel réalisant la transformation d'un fichier texte de mesures en base de données de type Micr passage de tableau de structure en parametre [ par dardarmotus ] dardarmotus Bonjour a tous les developpeurs,Voila j'ai un petit programme qui va chercher des données dans des fichiers texte.(jusque la pas de pbm) C editbox [ par flatou ] je souhaite ajouter du texte a la suite dans un editbox. comme il y a bcp de texte dedans, la meilleure solution est de positionner le curseur a la fi lire des données dans le registre de base c++ [ par Armandopoulos ] Salut ! CE serait vraiment gentil si quelquZun pourrait me donner des tipps.comment puis lire les données dans le registre de base ? existe il des fon Demandes [ par cuba ] BonjourJe suis un français vivant à Cuba et ai conçu un site de réservation de chambres chez l'habitant, , transport.. guide etc.Des gens m'ont aidé à Créer une EditBox [ par Ifrit235 ] Salut a tous j'aimerai savoir qu'elle argument faut mettre a la fonction CreatWindowEx(...) pour créer une édite box avec des "barres" sur le coté pou Trames vers base de données ACCESS [ par makandja ] Salut à tous, J'aimerais réaliser un module logiciel réalisant la transformation d'un fichier texte de mesures en base de données de type Microsoft A


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,562 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales