Instanzierte Klasse an zweites Form weiterleiten.



  • Hallo
    ich erstelle eine Klasse per ButtonClick.
    nach dem erstellen der Klasse wird ein zweites Form geöffnet, wo ich die Daten der Klasse abfragen möchte.
    Die Frage ist nur wie?
    Hier mein bisheriger Code:
    FromAbrechung, Abrechung.cpp

    void __fastcall TFormAbrechnung::rechnung_erstellenClick(TObject *Sender)
    {
      // Hier wird das PopUp per Mausclick angezeigt und die Klasse TSend erstellt.
      Senden1 = new TSend(DBGrid1->Fields[0]->AsString, DBGrid1->Fields[1]->AsString,DBGrid1->Fields[2]->AsString,DBGrid1->Fields[3]->AsString,DBGrid1->Fields[4]->AsString,DBGrid1->Fields[5]->AsString,DBGrid1->Fields[6]->AsString,DBGrid1->Fields[7]->AsString);
      if(Senden1->id()!=""){
      Abrechnung_Erstellen->ShowModal();
    }
    

    Wie kann ich jetzt auf die Klasse im Form Abrechung_Erstellen, AbrechungE.cpp
    zugreifen?
    ich habe beide Form's beidseitig includiert.
    mfg
    mich0r



  • wenn Senden1 im public-Abschnitt von TFormAbrechnung steht kannst du einfach mit FormAbrechnung->Senden1->... drauf zugreifen, genau wie auf Komponenten im anderen Form auch



  • hab jetzt die ganze Klasse von TSend in den public bereich ders ersten Form geschrieben. Jetzt kann ich auf die Klasse vom zweiten Form aus zugreifen

    FormAbrechnung->Senden1->

    funktioniert jetzt einwandfrei
    Vielen Dank für die Antwort 🙂
    mfg mich0r



  • naja, die ganze Klasse gehört da nicht umbedingt rein. Sondern nur die eine Variable, z.B.

    public:
    TSend *Senden1;
    


  • Hallo

    mich0r schrieb:

    ich erstelle eine Klasse per ButtonClick.

    Naja dieser Satz macht klar das mich0r die Begriffe Klasse un Instanz verwechselt. Ich vermute also das er es schon richtig gemacht hat, und nur den Pointer als Member des Forms deklariert hat.

    Aber ich möchte noch darauf hinweisen das die mit new erstellte Instanz auch irgendwo wieder gelöscht werden muß, spätestens im Destruktor von TFormAbrechnung.

    bis bald
    akari


Anmelden zum Antworten