in klassen auf sachen des Formulars zugreifen?



  • Hi - nehmen wir an das ich ein Edit habe, ich habe eine Klasse für die Steuerung meines Programms, jetzt müsste ich aber das Edit aus der Klasse heraus Ändern können, wie ist das möglich?

    vielen dank im vorraus, mfg klaus



  • Stellt sich für mich die Frage, ob dein Edit Mitglied deiner Klasse ist. Sollte das der Fall sein.

    yClass->yEdit-> <memberfkts von TEdit>
    


  • Maffe001 schrieb:

    Stellt sich für mich die Frage, ob dein Edit Mitglied deiner Klasse ist. Sollte das der Fall sein.

    yClass->yEdit-> <memberfkts von TEdit>
    

    mein edit ist auf dem formular, per ide draufgezogen, meine klasse ist selbstgeschrieben und soll die steuerung übernehmen.
    wie kann ich jetzt das edit nutzen?



  • Tja, tut mir leid, aber da weiss ich auch keinen Rat.
    Gibt es einen bestimmten Grund, warum du die Sache so aufgezogen hast? 😕



  • Maffe001 schrieb:

    Tja, tut mir leid, aber da weiss ich auch keinen Rat.
    Gibt es einen bestimmten Grund, warum du die Sache so aufgezogen hast? 😕

    hmm naja, das programm ist für die schule, da arbeiten wir halt mit dem c++ builder von borland, und ich würde gerne wenigstens die grundelemente in der ide machen



  • Da gibts doch auch was aus der FAQ? (forms)
    FAQ? Gute Hilfen!
    Gute Tipps!

    Wem das nicht passt: Klassenzeiger deiner Steuerklasse übergeben...oder alternativ komplett auf Document/View setzen und das in diesem Artikel angedachte Prinzip auf MVC ergänzen...

    -junix



  • ich werde mir die faq mal anschauen.
    das formular übergebe ich schon dem konstruktor meiner steuerung, denn da müssen Sachen von einer TImageList eingezeichnet werden.
    wenn ich aber
    formular->StatusBar1->SimpleText = "om"; mache geht das nicht, weil er statusbar1 nicht findet.



  • die faq hilft mir leider nicht sehr weiter 😞

    weitere vorschläge werden gerne gesucht



  • Wie übergibst du denn deine Form an den Konstruktor? TFrom* form; wäre falsch. Sagen wir, deine Form heißt TMyForm. Dann übergibst du TMyForm* form. Dann findet er auch die Statusbar.



  • WebFritzi schrieb:

    Wie übergibst du denn deine Form an den Konstruktor? TFrom* form; wäre falsch. Sagen wir, deine Form heißt TMyForm. Dann übergibst du TMyForm* form. Dann findet er auch die Statusbar.

    bis jetzt so:

    //Am anfang der unit
    TForm1 *Form1;
    
    //erstellen der steuerung mit dem Formular
    Steuerung = new TSteuerung(Form1);
    
    //Konstruktor
         TSteuerung(TForm *form);
    
    //in der deklaration der klasse gibt es private:
         TForm *formular;
    //Auf die in der ganzen klasse zugegriffen wird
    

    die fehlermeldung:

    'StatusBar1' ist kein Element von 'TForm'
    


  • .kb schrieb:

    //in der deklaration der klasse gibt es private:
         TForm *formular;
    

    Das sollte wohl besser auch vom Typ TForm1 sein:

    TForm1 *formular;
    

    Sonst kannst natürlich nur auf die Eigenschaften/Methoden von
    TForm zugreifen. Selbst hinzugefügte Komponente/Methoden "siehst"
    Du sonst nicht.

    Gruß,

    Alexander



  • Alexander Kempf schrieb:

    .kb schrieb:

    //in der deklaration der klasse gibt es private:
         TForm *formular;
    

    Das sollte wohl besser auch vom Typ TForm1 sein:

    TForm1 *formular;
    

    Sonst kannst natürlich nur auf die Eigenschaften/Methoden von
    TForm zugreifen. Selbst hinzugefügte Komponente/Methoden "siehst"
    Du sonst nicht.

    Gruß,

    Alexander

    OH!
    jetzt fällt es mir wie schuppen von den Augen!
    ich werde das gleich mal probieren



  • wow, es geht. danke!!


Anmelden zum Antworten