Bilder kopieren und einfügen ohne Erstellung neuer Images



  • Hi,
    ich habe auf meinem Form 1 Image erstellt und will dieses via Mausklick kopieren und woanderst auf dem Form einfügen OHNE dass Image-Felder vorhanden sind.
    Wie füge ich das Image1->Picture aus der Zwischenablage auf das Form hinzu?

    TClipboard *kopieren;
    kopieren=new TClipboard;
    kopieren->Assign(Image1->Picture);
    

    MfG
    Andi



  • Das Clipboard braucht du überhaupt nicht. Du kannt mit den Methoden von TCanvas (CopyRect etc.) direkt auf die Form zeichnen.



  • Jansen schrieb:

    Das Clipboard braucht du überhaupt nicht. Du kannt mit den Methoden von TCanvas (CopyRect etc.) direkt auf die Form zeichnen.

    Könntest du mir bitte beschreiben wie ich das mache? 🙄

    Image1->Canvas->CopyRect(x)

    Den Inhalt von X beschreiben, das verstehe ich in der Hilfe nicht 😞



  • Mit dem CopyRect-Beispiel in der Hilfe kommst du nicht klar?
    Und die Suchfunktion hier sollte eigentlich auch etliche Threads mit praktischen Beispielen liefern.



  • ich habs doch mit der hilfe hinbekommen, aber vielen dank nochmal 🙂



  • noch eine frage:

    Haben die vielen Images dann auch einen Namen?
    also gibt es für jedes einzelne einen namen?



  • Ich weiss ja nicht, wie du das letztendlich gelöst hast, aber was du auf den Canvas der Form zeichnest ist keine eigenständiges Image oder sonstiges Objekt, hat also auch keinen Namen und kann nicht angesprochen werden.



  • Jansen schrieb:

    Ich weiss ja nicht, wie du das letztendlich gelöst hast, aber was du auf den Canvas der Form zeichnest ist keine eigenständiges Image oder sonstiges Objekt, hat also auch keinen Namen und kann nicht angesprochen werden.

    // Mausposition / Breite, Höhe des Images.
    mx=mx/30;
    my=my/30;
    
    // Festlegen der Eigenschaft und Position des neuen Images.
    TRect   Eigenschaften, Position;
    Eigenschaften = Rect(0,0,100,100);
    Position = Rect((mx*30+1),(my*30+1),(mx*30+1)+100,(my*30+1)+100);
    
    Grafik->Terrain->Canvas->CopyRect(Position, Erzmine->Canvas, Eigenschaften);
    // Grafik->  ist die Form, Terrain->  ist ein Image.
    

    gibt auch eine andere lösung dass ich die einzelnen neuen bilder ansprechen kann?


Anmelden zum Antworten