Wohin mit dem Code



  • Hallo,

    ich bin glaub ich zu doof. Ich hab den Assistenten benutzt und eine ActiveX Form angelegt. Da find ich aber die OnShow nich. Könnt ihr mir da bitte nochmal helfen.

    Danke



  • hola

    OnShow ist im Objektinspektor nicht drinnen (zu midest bei mir auch net).
    aber unter (wenn deine Form "Form" heisst) Form-> gibt es das OnShow.

    Meep Meep



  • Genau das mein ich ,bei ner normalen Form is es da aber bei der AxtiveX Form nich



  • doch bei ActiveFormX is es auch dabei. nur halt nich im objektinspektor.

    schreibmal ActiveFormX->OnShow. da siehst es dann

    Meep Meep



  • Und wohin soll ich das schreiben?



  • du brauchst jetzt ne eigene funktion:

    void __fastcall FormShow(TObject *Sender); // im public
    
    // dann im konstruktor z.b:
    ActiveFormX = &FormShow;
    

    hoffe das das so jetzt stimmt.

    Meep Meep



  • Wenn ich das so versuche, mekert er immer rum, das eine Mehrdeutigkeit besteht.
    Kannst du mir das bitte nochmal genau sagen wie du das gemacht hast?



  • //  ActiveFormImpl1.h
    
    class TActiveFormX : public TActiveForm
    {
    __published:	// Von der IDE verwaltete Komponenten
    private:	// Anwender-Deklarationen
    public:		// Anwender-Deklarationen
        __fastcall TActiveFormX(HWND ParentWindow);
        __fastcall TActiveFormX(TComponent* AOwner): TActiveForm(AOwner) {};
        void __fastcall tempo(TObject *z);
    };
    //---------------------------------------------------------------------------
    extern PACKAGE TActiveFormX *ActiveFormX;
    
    //  ActiveFormImpl1.cpp
    
    TActiveFormX *ActiveFormX;
    //---------------------------------------------------------------------------
    __fastcall TActiveFormX::TActiveFormX(HWND ParentWindow)
       : TActiveForm(ParentWindow)
    {
       this->OnShow = &tempo;
    }
    //---------------------------------------------------------------------------
    
    void __fastcall TActiveFormX::tempo(TObject *z)
    {
       // test
    }
    

    Meep Meep



  • Hallo,

    also ich hab den Code probiert, der wird auch einwandfrei übersetzt, aber leider wird die Funktion Tempo nicht aufgerufen und an dem Konstrukter macht das Programm auch nicht halt, also irgendwas scheint da noch nich ganz hinzuhauen. funktioniert das bei dir?



  • ehrlich gesagt weiß ich das net. hab mit ActiveFormX noch nix gemacht bisher.
    mir war eigendlich nur etwas langweilig, deshalb hab ich wegen dem OnShow nachgeguckt. ich hatte gehofft, das es funktioniert haette. vielleicht weiß ja jemand anders noch weiter.
    irgendwie kann aber noch im ActiveFormProj1_TLB der hund begraben liegen. dort wird auch noch einiges fuer die activeform gemacht.

    Meep Meep


Anmelden zum Antworten