TImage Objekt dynamisch ertstellen und anzeigen



  • Hi hab ein Problem, ich kann zwar ein TImage-Objekt erstellen, aber nicht anzeigen.

    habe es so erstellt:

    void __fastcall TZombie::FormCreate(TObject *Sender)
    {
    Graphics::TBitmap *OrgImage = new Graphics::TBitmap;
    AnsiString Pfad = GetCurrentDir();
    OrgImage->LoadFromFile(Pfad + "\\media\\images\\models\\player.bmp");
    img_spieler->Picture->Bitmap = OrgImage;
    
    [b]TImage *p = new TImage;[/b]
    [b]p->Picture->Bitmap = OrgImage;[/b]
    
    delete OrgImage;
    
    phirad = (phiw * M_PI) / 180;
    
    }
    

    hat bis dahin auch gut funktioniert, aber ich kann es nicht anzeigen, habe schon die größe , position verändert, weil ich gedacht habe es wäre zu klein oder nicht im sichtbaren bereich...

    Wie kann ich es anzeigen???
    Hab ich was falsch gemacht???



  • Ich glaube das must du so machen:

    TImage *p = new TImage(this);
    p->Parent = this;
    p->Picture->Bitmap = OrgImage;
    


  • Hallo

    btw brauchst du so gar kein extra TBitmap, verwende gleich TImage::Picture::LoadFromFile

    bis bald
    akari



  • Danke Jungs, so gehts, eine frage so nebenbei:

    wozu muss man dort den this-operator angeben???



  • Hallo

    weil du sowohl als Owner als auch als Parent des neuen TImage-Controls eben die Instanz des Form übergeben willst, für das die Methode gerade aufgerufen wird.

    Was Owner und Parent bedeuten steht in der BCB-Hilfe.

    bis bald
    akari


Log in to reply