Bild ohne Form hat einen Weißem Rand

  • VB.NET

Es gibt 13 Antworten in diesem Thema. Der letzte Beitrag () ist von Artentus.

    Bild ohne Form hat einen Weißem Rand

    Hallo liebe vb-pradise Community,

    möchte ein Bild ohne die Form im Hintergrund anzeigen lassen. Doch das Bild hat dann einen Weißen Rand.
    Ich weiß leider nicht woran es liegt. Das Bild ist ein .png und ist ordentlich ausgeschnitten worden.
    Weist also keinen Weißen Rand auf wenn man es mit anderen Programmen sich anzeigen lässt.
    Hat jemand eine Lösung?
    Wäre da sehr dankbar.

    Mfg TheTrust3343
    Conway's Game Of Life Monogame Sample: 80%

    Conway's Game Of Life Monogame Sample
    vielleicht stretch?
    backgroundimagelayout auf stretch ändern

    mit code so:

    VB.NET-Quellcode

    1. Me.BackgroundImageLayout = ImageLayout.Stretch

    kann auch sein , dass ich die Frage falsch verstanden habe :thumbsup:

    edit:
    ja ich habe es falsch verstanden :D

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „CatchTheBird“ ()

    Also vllt. hast du es falsch verstanden.
    Ich benutze diesen Code hier;

    VB.NET-Quellcode

    1. Me.TransparencyKey = Me.BackColor

    um die Form unsichtbar zu machen.
    Allerdings hat das Bild das auf der Form liegt einen Weißen Rand den ich weg bekommen möchte
    Conway's Game Of Life Monogame Sample: 80%

    Conway's Game Of Life Monogame Sample
    So:
    Me.BackgroundImage:

    VB.NET-Quellcode

    1. Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    2. Me.BackColor = Color.BlueViolet
    3. Me.TransparencyKey = Color.BlueViolet
    4. Me.BackgroundImageLayout = ImageLayout.Stretch
    5. Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None
    6. End Sub


    Me.BackgroundImage + PictureBox:

    VB.NET-Quellcode

    1. Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    2. Me.BackColor = Color.BlueViolet
    3. Me.TransparencyKey = Color.BlueViolet
    4. PictureBox1.BackColor = Color.BlueViolet
    5. PictureBox1.BackgroundImageLayout = ImageLayout.Stretch
    6. Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None
    7. PictureBox1.Image = CType(My.Resources.ResourceManager.GetObject("Bild"), Drawing.Image)
    8. End Sub


    Me.BackgroundImage + verschieben ohne Rand:

    VB.NET-Quellcode

    1. Option Strict On
    2. Public Class Form1
    3. Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    4. Me.BackColor = Color.BlueViolet
    5. Me.TransparencyKey = Color.BlueViolet
    6. Me.BackgroundImageLayout = ImageLayout.Stretch
    7. Me.FormBorderStyle = Windows.Forms.FormBorderStyle.None
    8. End Sub
    9. Dim mouseOffset As Point
    10. Private Sub Me_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs) Handles MyBase.MouseDown
    11. mouseOffset = New Point(-e.X, -e.Y)
    12. End Sub
    13. Private Sub Me_MouseMove(ByVal sender As Object, ByVal e As MouseEventArgs) Handles MyBase.MouseMove
    14. If e.Button = MouseButtons.Left Then
    15. Dim mousePos = Control.MousePosition
    16. mousePos.Offset(mouseOffset.X, mouseOffset.Y)
    17. Location = mousePos
    18. End If
    19. End Sub
    20. End Class


    LG ... ;)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „TVX“ ()

    W

    Artentus schrieb:

    Die Ränder des Bildes dürfen keine semitransparenten Pixel aufweisen, alle Pixel müssen entweder voll oder gar nicht gesetzt sein. Das ist blöd, lässt sich in WinForms aber nicht ändern, für glatte Ränder müsstest du WPF verwenden.

    Wie funktioniert das den mit WPF? Habe da nicht so die ahnung von.
    Conway's Game Of Life Monogame Sample: 80%

    Conway's Game Of Life Monogame Sample
    Kann ich dir jetzt nicht wirklich erklären, mit dem Stoff kann man ganze Bücher füllen, ist auch relativ fortgeschrittenes Wissen. Wenn dus wirklich lernen willst, dann kannst du dich schonmal drauf einstellen, dass alles, was du so aus WinForms kennst, hinfällig wird, das Konzept von WPF ist ein gänzlich anderes. Und Zeit solltest du auch einige mitbringen, das lernt man nicht von heute auf morgen.

    diylab schrieb:

    TheTrust3343 schrieb:

    Hat jemand eine Lösung?

    Vielleicht hilft Dir das PerPixelAlpha-Blending?
    Ich habe es eben ausprobiert und es funktioniert prima.

    LG,
    Bruno

    Ok habe es mal runtergeladen. Nur wie binde ich die .cs datei in mein Projekt ein? Finde keinen weg sie hinzuzufügen.
    Ist das überhaupt für .net ?
    Conway's Game Of Life Monogame Sample: 80%

    Conway's Game Of Life Monogame Sample

    TheTrust3343 schrieb:


    Ok habe es mal runtergeladen. Nur wie binde ich die .cs datei in mein Projekt ein? Finde keinen weg sie hinzuzufügen.
    Ist das überhaupt für .net ?

    Autsch - das ist heftig!
    Ich geh jetzt erst mal schlafen und hoffe darauf, dass Du Dich entweder informierst oder es Dir Jemand in der Nacht erklärt.
    Falls nicht, versuchen wir es später noch einmal ;) .
    Du könntest der weilen auch allein C# in VB übersetzen: LINK, LINK, LINK oder Dich mit dem Verständnis des .NET Frameworks und den darauf aufsetzenden Programmiersprachen wie C# und VB.NET beschäftigen.
    Gute N8

    Grasdackel1996 schrieb:

    @Mokki Da muss nichts konvertiert werden. C# und VB.NET sind beide Sprachen des .NET-Frameworks, die verstehen sich also untereinander ohne Probleme.

    @TheTrust3343 Hinzufügen von Verweisen


    VB2010 nimmt aber keine .cs dateien an. Wie man Verweise hinzufügt weiß ich. Allerdings nicht wie man .cs dateien einbinden soll. Ich habe bis jetzt keine möglichkeit gefunden dieses einzubinden.
    Conway's Game Of Life Monogame Sample: 80%

    Conway's Game Of Life Monogame Sample