Frage zu Dynamisch erzeugten Komponenten



  • Hallo, wie man nun Komponenten dynamisches erzeugt, ist nicht das problem. Mein Problem ist nur, dass wenn ich dynamische Komponete erzeuge, nicht mehr dieses Hilfsmneü angezeigt bekomme, wenn ich z.B. -> eingebe. Muss ich da was einstellen, oder hab ich halt pech gehabt und muss nachschauen, welche Methoden und Eigenschaften die Komponente hat?

    Gruß
    Thorsten



  • Die Komponente oder Klasse muss korrekt deklariert sein, dann funktioniert auch die Code-Vervollständigung.

    Zeig doch mal ein nichtfunktionierendes Komplettbeispiel.



  • also z.B.:

    Globale Deklaration:

    DynamicArray<TTabSheet*>tab_Left;     // Dyn Array für Tabs links
     DynamicArray<TTabSheet*>tab_Right;    // Dyn Array für Tabs rechts
    

    und dann halt

    int i_AktPos = tab_Left.Length -1; // Einlesen der gesamt Länge und -1 rechnen
    
        // Neues Tab an der Stelle i_AktPos erstellen
        tab_Left[i_AktPos] = new TTabSheet(this);
        tab_Left[i_AktPos]->PageControl=page_left;  //Haupt PageControll zuweisen
        tab_Left[i_AktPos]->Caption="C:/";        //Caption angeben
    

    bei tab_Left[i_AktPos]-> klappt dann die Codevervollständigung nicht, aber programm wird korrekt ausgeführt, einen andere header datei habe ich nicht eingebunden, werde ich aber mal ausprobieren



  • hmm im header der hauptunit ist aber schon
    #include <ComCtrls.hpp>
    eingebunden...



  • "Klappt nicht" heisst, es geht nicht automatisch, oder auch nicht mittels CTRL-Space?



  • Ahhh!!! CTRL-Space war das Stichwort. Damit funktioniert es dann Danke!

    Ist schon spät 🙂 aber das wusste ich auch nicht, sowas zeigen uns unsere Lehrer nicht 😉

    Danke...



  • Hallo

    das liegt an den Array-Klammern. Auch bei Runden Klammern, nach Funktionen also funktiont das Autovervollständigen nicht. Das ist immer so, in dem Sinne kein Fehler einzelner dynamischer Komponenten.

    bis bald
    akari


Anmelden zum Antworten