Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 4 sur 4
  1. #1
    Nouveau Membre du Club
    Inscrit en
    janvier 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 29

    Informations forums :
    Inscription : janvier 2007
    Messages : 84
    Points : 31
    Points
    31

    Par défaut Créer et récupérer un événement

    Bonsoir,
    J'ai créé pour le fun un petit programme RSA en C++. Lorsque je l'exécute tout va bien, la fenetre DOS s'ouvre sa créer les clés, cryptes et décryptes.
    Donc je voulait lui rajouter une interface graphique un peu plus simpa. Et là c'est le drame !!!
    J'ai une zone de texte wxTextCtrl dans laquel j'ecris mon message, un bouton "crypter" (wxButton) et une zone qui doit m'afficher le message crypter.
    Dans la fonction rattachée au bouton, j'ai inséré le code qui sert à générer mes clé et dans la premiere zone de texte, la variable qui stock la chaine de caractère.
    Que je veux crypter, je génére mes clés mais il n'y a pas d'action sur mon message.

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    /*Zone ou se trouve mes fonctions de calcul*/
     
    void RSA2_2Dialog::OnButton3Click(wxCommandEvent& event)
    {
    /*Zone où je rentre mon code pour générer les clés*/
    }
     
    void RSA2_2Dialog::OnInit(wxInitDialogEvent& event)
    {
    }
     
    void RSA2_2Dialog::OnTextCtrl1Text(wxCommandEvent& event)
    {
    /*zone où je rentre la variable chaine de caractère*/
    }
     
    void RSA2_2Dialog::OnTextCtrl2Text(wxCommandEvent& event)
    {
    /*Zone ou je suis censé récupérer mon message crypté*/
    }
    Comment faire ??
    Merci à vous.
      0  0

  2. #2
    Membre confirmé Avatar de wxXav
    Homme Profil pro Xavier Perrissoud
    Développeur amateur
    Inscrit en
    décembre 2008
    Messages
    145
    Détails du profil
    Informations personnelles :
    Nom : Homme Xavier Perrissoud
    Localisation : France

    Informations professionnelles :
    Activité : Développeur amateur

    Informations forums :
    Inscription : décembre 2008
    Messages : 145
    Points : 247
    Points
    247

    Par défaut

    Salut.

    En fait, tu n'as pas besoin de toutes ces méthodes événementielles.

    Seule celle connectée au wxButton est utile.

    Dans cette dernière, il te faut :
    • Récupérer le contenu du message à crypter dans un wxString
    • Passer ce message à la moulinette pour le crypter
    • Placer le résultat du cryptage dans la deuxième zone de texte


    Si tu as besoin de plus d'infos, n'hésites pas.

    @+
    Xav'
      0  0

  3. #3
    Nouveau Membre du Club
    Inscrit en
    janvier 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 29

    Informations forums :
    Inscription : janvier 2007
    Messages : 84
    Points : 31
    Points
    31

    Par défaut

    Au risque de passer pour un nul comment fait on avec le wxstring:

    Dans mon code de départ, pour récupérer le message, je fait:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    int main(int argc, char *argv[])
    {
    char Message[LONGUEUR_CHAINE];
    ...
    cout<<"Entrez une phrase: ";
    cin.getline(Message, LONGUEUR_CHAINE);
    ...
    }
    Avec les infos que tu m'as donnés, je pense qu'il faut que je fasse:

    Code :
    1
    2
    3
    4
    5
     
    void RSA2_2Dialog::OnButton1Click(wxCommandEvent& event)
    {
      wxString Message;
    }
      0  0

  4. #4
    Membre confirmé Avatar de wxXav
    Homme Profil pro Xavier Perrissoud
    Développeur amateur
    Inscrit en
    décembre 2008
    Messages
    145
    Détails du profil
    Informations personnelles :
    Nom : Homme Xavier Perrissoud
    Localisation : France

    Informations professionnelles :
    Activité : Développeur amateur

    Informations forums :
    Inscription : décembre 2008
    Messages : 145
    Points : 247
    Points
    247

    Par défaut

    Salut.

    Normalement, lors de la création de la zone de texte, tu dois récupérer un pointeur.
    Code :
    wxTextCtrl *m_txtMessage = new wxTextCtrl(......);
    C'est grâce à ce pointeur que tu pourras récupérer le texte qu'elle contient :
    Code :
    wxString sMsg=m_txtMessage->GetValue();
    Ensuite, tu crypte le message (qui se trouve désormais dans la variable sMsg)
    Enfin, tu places le résultat de la même manière dans la zone de texte correspondante :
    Code :
    m_txtCryptage->SetValue(sResultat);
    @+
    Xav'
      0  0

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •