Teile einer Bitmap, bitte um Hilfe ;)

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von bsHobbit.

    Funktionstest...

    funktioniert mein Link nicht oder will mir heute keiner helfen ;(

    Ich weiß, das es sich nicht gehört zu drängeln aber ich würde gern weiter machen....ich habe leider [noch] nicht so viel erfahrung mit VB...

    es ist schon relativ spät,man möge mir die Rechtschreibfehler verzeihen!
    Hi!

    Bitte vermeide Doppelposts!
    Leider ist diese Community nicht so groß, dass man innerhalb von n paar Stunden immer ne Antwort bekommt (besonders am Abend / in der Nacht).
    Du solltest auf jeden Fall nen Tag warten, die meisten sind hier eher am Nachmittag aktiv.

    Die schnellste (leistungsstärkste) Methode ist auf jeden Fall mit der BitBlt-API, ich weiß aber nicht, ob die in vb.net noch funktioniert.

    VB.NET-Quellcode

    1. Declare Function BitBlt Lib "gdi32" Alias "BitBlt" (ByVal hDestDC As Long, _
    2. ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, _
    3. ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
    4. Const SRCCOPY = &HCC0020 ' (DWORD) dest = source


    Die Konstante SRCCOPY verwendest du dabei als "Zeichenmethode" (dwRop-Parameter). Als hDestDC und hSrcDC gibts du die DCs (sollten Eigenschaften der PicBoxen oder der Bilder sein) von der Ziel-Picturebox und der Quell-Picturebox an. x, y, width und height sollten klar sein.

    Wenn das nicht geht, gibts noch das Graphics-Objekt.
    Vielleicht findest du da ja was, wenn du googlest.


    so long..
    Andy

    Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von „Mad Andy“ ()

    VB.NET-Quellcode

    1. Dim instance As Graphics
    2. Dim image As Image
    3. Dim destRect As Rectangle
    4. Dim srcX As Integer
    5. Dim srcY As Integer
    6. Dim srcWidth As Integer
    7. Dim srcHeight As Integer
    8. Dim srcUnit As GraphicsUnit
    9. instance.DrawImage(image, destRect, srcX, srcY, srcWidth, srcHeight, srcUnit)
    hi,

    Ich habe es probiert, wie du es sagtes:

    Zitat:
    Dim instance As Graphics
    Dim image As Image
    Dim destRect As Rectangle
    Dim srcX As Integer
    Dim srcY As Integer
    Dim srcWidth As Integer
    Dim srcHeight As Integer
    Dim srcUnit As GraphicsUnit

    instance.DrawImage(image, destRect, srcX, srcY, srcWidth, srcHeight, srcUnit)


    Ich weis allerdings nicht wie ich die instanz der Graphics-Klassse (instance) konstruieren soll, da die Graphics-Klasse keinen Konstruktor enthält. Ich bekomme folglich folgenden Fehler:

    Warning 1 Variable 'inst' is used before it has been assigned a value. A null reference exception could result at runtime. C:\Dokumente und Einstellungen\tmode00\Desktop\JacksOrBetter\JacksOrBetter\WindowsApplication1\Form1.vb 48 9 WindowsApplication1


    es meint zwar ,,could" aber es stürtzt auch an der Stelle ab!
    Jaha, das is auch nur n auszug, wie es geht...

    Das ganze kannst du z.b. in die Paint methode von einer Picturebox packen

    das ist es dann

    VB.NET-Quellcode

    1. e.graphics.DrawImage(...)


    und die parameter musst du selbstverständlich noch initialisieren bevor du sie verwendest ;)