picturebox transparent

  • VB.NET

Es gibt 14 Antworten in diesem Thema. Der letzte Beitrag () ist von jvbsl.

    picturebox transparent

    Hallo,
    Wie kann ich bestimmte stellen einer picbox transparent machen?
    Entweder mit Code oder mit Programm.
    Welche dateiendung muss das Bild haben?
    Habs mit paint.net probiert, funzt aber nicht...
    Lg luca
    Hallo,

    BitBlt ist ein WinAPI aufruf und wurde hauptsächlich in VB 6 und älterem verwendet...
    ich würde nun einfach mit der Region-Eigenschaft arbeiten, bzw. jenachdem auch mit GDI+(schätzungsweise bei deinem Vorhaben das beste...)und dazu findet man mit google genug...

    Mfg jvbsl
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    Hallo,
    hab mir jetzt ein paar gdi+ tutorials auf youtube angeschaut und habe festgestellt das das glaube ich nicht das richtige für mich ist!

    Habe diesen code vor einer Woche gefunden:

    VB.NET-Quellcode

    1. ' Bitmap-Objekt
    2. Dim oBitmap As System.Drawing.Bitmap
    3. ' Bild aus Datei laden
    4. oBitmap = System.Drawing.Bitmap.FromFile("d:\user.gif")
    5. ' Transparente Farbe festlegen
    6. oBitmap.MakeTransparent(System.Drawing.Color.White)
    7. ' Bild in der PictureBox anzeigen
    8. PictureBox3.Image = oBitmap


    Bevor ich mein Programm begonnen habe habe ich versucht ob der Code funktioniert!
    Es war alles perfekt, die weißen stellen waren danach trasparent.
    Jetzt allerdings funktioniert das nicht O.o


    Habe mal das Bild hochgeladen..
    Einfaches Bild. Weißen stellen sollen transparent werden.

    Gibt es sonst noch eine Möglichkeitr?

    lg Luca

    Ps: Habe das bild in allen dateiendungen...
    Bilder
    • uf2.gif

      1,3 kB, 44×57, 778 mal angesehen
    hallo, dafür ist MakeTransparent schon richtig, jedoch musst du das ganze auch mit GDI+ und nicht mit einer PB zeichnen...(dein Codebeispiel hat nix mit GDI+ zu tun)
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    AlphaKanal ohne GDI->DirectX, OpenGl, XNA, oder über Region...
    aber wird alles leicht komplizierter sein als mit GDI+ schnell mal was zu zeichnen...
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    du gehst in das Paint-Event des Formulars und tippst mal das ein...:

    VB.NET-Quellcode

    1. e.Graphics.FillRectangle(Brushes.Red,New Rectangle(10,20,100,100))

    schon hast du deine erste Anwendung mit GDI^^

    Google->VB .Net GDI
    vbdotnetheaven.com/Uploadfile/…8AM/GdiPlusBiggeners.aspx

    für das zeichnen eines Bildes einfach e.Graphics.DrawImage...aber ich will dir ja nicht die ganze Arbeit wegnehmen...
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    :D

    VB.NET-Quellcode

    1. e.Graphics.DrawImage(New Bitmap("C:\Users\luca\Desktop\VB Spiel Pics\uf2.bmp"), 0, 0)

    Das hab ich jetzt..

    Wie mache ich das jetzt transparent??
    lg Luca

    PS: Ich habe meinen GANZEN code schon. gibt es keine andere möglichkeit die bilder trasparent zu machen ohne den code zu verändern?
    das stimmt schon, dass bmp keine Transparent hat, aber er kann das Bild ja zuerst in eine Variable laden und mit MakeTransparent eine Farbe als die Transparente Farbe festlegn und dieses zeichnen(ist auch Performanter...)
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    Ahhhh
    Ich glaube ich hab das Problem gefunden.
    Bei Screen 1 funzt der Code.
    Bei Screen 2 nicht!
    Bei Screen 2 Ist eine Picturebox, die im hintergrund ist!! So kann ich leider auch kein Visible verwenden.. :(
    Wenn ich die picturebox mit dem hintergrund in den Vordergrund gebe sehe ich die anderen picboxen die drauf leigen nicht mehr..
    Also alles ziemlich blöd...

    Die picturebox mit dem Hintergrund läuft herunter sodass es ausschaut als das sich das raumschiff bewegt!
    Gibt es eine Möglichkeit Visible, transparent-Code zu verwenden ohne das das "hintergrund-Bild" im hintergrund ist?

    lg luca
    Bilder
    • Screen2.PNG

      8,28 kB, 90×65, 772 mal angesehen
    • Screen1.PNG

      1,06 kB, 89×83, 724 mal angesehen