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

C++Builder Discussion :

Passer des informations d'une fiche à l'autre


Sujet :

C++Builder

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 44
    Points : 28
    Points
    28
    Par défaut Passer des informations d'une fiche à l'autre
    Bonjour,

    Me revoila avec une nouvelle question.
    J'ai Form1 qui demande le nom et le prénom d'une personne, et le résultat doit s'afficher dans Form2, cependant, je ne sais pas comment passer des informations entre ces deux fiches.
    Si quelqu'un a une piste, je suis preneur

    PS: Si vous connaissez des sites avec des cours/tuto sur C++ builder 6, je suis preneur, je suis en train de faire les cours et tutoriels pour apprendre C++.

    Cordialement

    Coxycross

  2. #2
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2012
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2012
    Messages : 164
    Points : 356
    Points
    356
    Par défaut
    On peut toujours faire des références circulaires, genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    // dans Form1:
     
    {
       Form2->Edit1 = "allo" ;
       Form2->ShowModal() ;
    }
     
    // dans Form2
     
    void TForm2::TForm2Button1Click(TObjet* sender)
    {
      Form1->Edit1 = "whatever"  ;
    }
    Mais c'est pas exactement de la programmation stucturée, à mon humble avis. En fait, je dévisserais la tête d'un élève qui m'arriverait avec ça.

  3. #3
    Membre chevronné
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Points : 2 187
    Points
    2 187
    Billets dans le blog
    1
    Par défaut
    une des possibilités est de créer un constructeur prenant en paramètres les informations que tu veux transfèrer entre tes fiches
    Exemple:
    La Form Principale affiche la form2 en lui transmettant en paramètres le nom et le prenom saisi dans la Form pricipale
    la Form2 affiche dans 2 editBox le Nom et le prenom;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
     
    // .h Form1(Principale)
    #ifndef Unit1H
    #define Unit1H
    //---------------------------------------------------------------------------
    #include <Classes.hpp>
    #include <Controls.hpp>
    #include <StdCtrls.hpp>
    #include <Forms.hpp>
     
    //---------------------------------------------------------------------------
    class TForm1 : public TForm
    {
    __published:	// Composants gérés par l'EDI
    	TButton *Button1;
    	void __fastcall Button1Click(TObject *Sender);
    private:	// Déclarations utilisateur
    public:		// Déclarations utilisateur
    	__fastcall TForm1(TComponent* Owner);
    };
    //---------------------------------------------------------------------------
    extern PACKAGE TForm1 *Form1;
    //---------------------------------------------------------------------------
    #endif
     
    // le .cpp de la Form1
    #include <vcl.h>
    #pragma hdrstop
     
    #include "Unit1.h"
    #include "Unit2.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
    	: TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
       TForm2* mForm2= new TForm2(NULL,"MonNom","MonPrenom");  // Creation dynamique en appelant le ocnstructeur spécialise
       mForm2->ShowModal();   // Affichage de la fiche
       delete mForm2;         // finalement destruction
    }
    //---------------------------------------------------------------------------
     
    // le .h de la Form2
    #ifndef Unit2H
    #define Unit2H
    //---------------------------------------------------------------------------
    #include <Classes.hpp>
    #include <Controls.hpp>
    #include <StdCtrls.hpp>
    #include <Forms.hpp>
    //---------------------------------------------------------------------------
    class TForm2 : public TForm
    {
    __published:	// Composants gérés par l'EDI
    	TEdit *Edit1;
    	TEdit *Edit2;
    private:	// Déclarations utilisateur
    	AnsiString FNom;       // Membre privé contenant le Nom
    	AnsiString FPrenom;    // Membre privé contenant le Prenom
    public:		// Déclarations utilisateur
    	__fastcall TForm2(TComponent* Owner);
    	__fastcall TForm2(TComponent* Owner,AnsiString Nom,AnsiString Premom); // Constructeur Spécialisé
     
    };
    //---------------------------------------------------------------------------
    extern PACKAGE TForm2 *Form2;
    //---------------------------------------------------------------------------
    #endif
     
    // le .cpp
    //---------------------------------------------------------------------------
     
    #include <vcl.h>
    #include "Unit2.h"
    #pragma hdrstop
     
     
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm2 *Form2;
    //---------------------------------------------------------------------------
    __fastcall TForm2::TForm2(TComponent* Owner)
    	: TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    __fastcall TForm2::TForm2(TComponent* Owner,AnsiString Nom,AnsiString Premom)
    	: TForm(Owner),      // ocnstructeru Spécialisé avec initilisation de la classe de base et ds membres privés
    	FNom(Nom),
    	FPrenom(Premom)
     
    {
      Edit1->Text=FNom;          // affichage du résultat
      Edit2->Text=Premom;
    }
    et voila simple non
    cdlt
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2011
    Messages : 44
    Points : 28
    Points
    28
    Par défaut
    Bonjour,

    merci pour vos réponses, je vais lire le cours de Guyt54 attentivement, et je m'en vais d'ailleurs tester le code DjmSoftware afin de l'adapter à mes besoins.

    Merci et bonne jounée

  5. #5
    Membre chevronné
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Points : 2 187
    Points
    2 187
    Billets dans le blog
    1
    Par défaut
    Hello
    tu trouveras également sur ce site dans les FAQ C++ des informations qui te permettront de progresser avec C++ Builder

    Merci de nous faire part du résultat de tes investigations
    cdlt
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

Discussions similaires

  1. Réponses: 24
    Dernier message: 29/05/2015, 17h02
  2. Passer des informations d'une page à une autre
    Par cyrina1 dans le forum JSF
    Réponses: 7
    Dernier message: 16/09/2014, 21h11
  3. problème à passer des valeurs d'une form à l'autre
    Par gibea00 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 07/08/2007, 13h45
  4. passer des valeurs d'une page à l'autre
    Par casaoui dans le forum ASP.NET
    Réponses: 8
    Dernier message: 13/06/2007, 17h55
  5. Réponses: 2
    Dernier message: 04/10/2005, 20h54

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