In visual basic kijk ik knal door een venster heen?

Moderators: jkien, Xilvo

Reageer
Berichten: 2.589

In visual basic kijk ik knal door een venster heen?

Ik probeer een afbeelding in te laden in een visual basic programma en die af te beelden. Maar hierbij kom ik tot het volgende vreemde resultaat kan mij iemand helpen dit te verklaren?
Ik zie namelijk door de afbeelding andere venster? Vreemd in nog geen andere taal ooit meegemaakt?
  Afbeelding
Bijlagen
probleem_kijk_door_afbeelding.png
probleem_kijk_door_afbeelding.png (73.88 KiB) 695 keer bekeken

Berichten: 301

Re: In visual basic kijk ik knal door een venster heen?

Heeft de afbeelding zelf heeft misschien een hoge transparency?

In een image viewer lijkt dit vaak wit, maar sommige programmas nemen dit letterlijk over en zijn dan doorzichtig.

Ik heb het weleens gehad met GHS Labels, als ik de afbeelding normaal laadde was de achtergrond wit, als ik ze kopieerde/plakte vanuit Word was de achtergrond transparent(binnenkant van symbool was wel netjes wit) en toen ik ging printen was de achtergrond weer wit(zat er een alsnog een wit vlakje omheen die niet zichtbaar was in het label-programma)...
Plan? I don't need a plan, just a goal. The rest will follow on its own.

Clever waste of time: Level 31

Berichten: 2.589

Re: In visual basic kijk ik knal door een venster heen?

Maar hoe los ik het op? Ik heb al een printscreen genomen van de afbeelding in de viewer waar dat ik er niet door heen kan kijken. Je zou dan denken dat al de intelligentie van de afbeelding weg is en dat je enkel de pixels overhoud maar toch niet het blijft hetzelfde??  

Re: In visual basic kijk ik knal door een venster heen?

Transparency in een afbeelding word altijd bepaald door een alfa-kanaal. Heb je photoshop oid dan kan je eens kijken of jou afbeelding een alfa-kanaal heeft en indien verwijderen.

Kan je in visual basic het effect van zon alfa-kanaal ni uitschakelen?

HV

Berichten: 12.262

Re: In visual basic kijk ik knal door een venster heen?

Geen idee hoe het in VB moet, maar als je zoiets in html doet kun je er ook gewoon een wit vakje onder zetten - misschien niet meest elegant, maar ik denk dat dat in VB toch ook wel zou moeten kunnen?
Victory through technology

Berichten: 2.589

Re: In visual basic kijk ik knal door een venster heen?

Geen idee hoe ik dat in VB doe maar waarom verdwijnt het effect niet door een printscreen? is een printscreen dus meer dan gewoon de waardes van al je pixels. 

Re: In visual basic kijk ik knal door een venster heen?

Heb de afbeelding is beter bekeken op de mac (voorheen iphone), en er blijkt inderdaad iets vreemd aan de hand.
 
Ben nu van mening dat het waarschijnlijk niets te maken heeft met een alfa-kanaal in een afbeelding. Dergelijke verschijnselen heb ik indertijd ook vaak gehad op de pc met andere software en denk dus eerder aan een bug/conflict van software en hardware (GPU).
 
VB maakt normaal (best) gebruik van DirectX... misschien staan uw instellingen op OpenGL(GPU)? (een wilde gok)
 
Probeer het programma eens uit op een ander systeem eventueel om zeker te zijn.
 
Eerst dacht ik ook nog aan een clipping-path, maar alleen opmaakprogramma's maken daar gebruik van zoals Quark xpress en Indesign...
 
HV

Gebruikersavatar
Berichten: 2.609

Re: In visual basic kijk ik knal door een venster heen?

Om te beginnen zou het al helpen moest je code/afbeelding kunnen geven zodat wij het kunnen reproduceren. Momenteel zie ik niet hoe je de afbeelding precies tekent: rechtstreeks op het Form, in een Picturebox, ...
 
Heb je al eens geprobeerd om een andere afbeelding in te laden? i.e. gwn wat kribbels in Paint als .bmp opslaan zodat er zeker geen transparancy layer in kan zitten?

Berichten: 2.589

Re: In visual basic kijk ik knal door een venster heen?

Nee het blijft allemaal hetzelfde. wat gekibbel opgeslagen en in een ander formaat (bmp, jpg, png) het blijft dit doen.

Code: Selecteer alles

Dim hoogte, breedte As Integer
    Const maximum As Long = 459
    Dim Last_status As Boolean
    Private Property Positie_Z As String
    Dim background_kleur As Color
 
    Dim myBitmap As New Bitmap("F:\DATA\SOFT\CODE_HOST\test_usb_host\test_usb_host\pic\new2.bmp")
    Dim g As Graphics

    Sub New()
 
        ' This call is required by the designer.
        InitializeComponent()
 
        ' Add any initialization after the InitializeComponent() call.
 
        g = Me.CreateGraphics()
        background_kleur = Me.BackColor()
 
 
        Me.PictureBox1.BackColor() = background_kleur
         Last_status = False
 
    End Sub

Code: Selecteer alles

 Private Sub RadioButton1_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton1.Click
        Last_status = Not Last_status
        RadioButton1.Checked = Not Last_status
        Me.Label1.Text = "rrrrr"
        Me.Label1.Update()
        g.Clear(background_kleur)
        If Last_status Then
            g.DrawArc(Pens.Black, 1, 1, 100, 100, 0, 360)
        Else
            g.DrawArc(Pens.Black, 1, 1, 300, 300, 0, 360)
        End If
        g.DrawImage(myBitmap, 100, 100)
 
    End Sub
 

Gebruikersavatar
Berichten: 2.609

Re: In visual basic kijk ik knal door een venster heen?

Hhm ik zie zo ook direct geen probleem.
 
Kan je eens kijken wat dit geeft als output? myBitmap.PixelFormat.ToString()

Berichten: 27

Re: In visual basic kijk ik knal door een venster heen?

Ik heb wel met QB gewerkt en poogde VB,doch dit werkte gecompliceerder wegens te maken van afbeeldingen,wat met QB niet ging.

Via Google kwam ik met een Duitse site in aanraking,die veel vragen beantwoordde van QB en ook VB;ik meen dat er behalve in het duits ook engels wordt gemaild.

Reageer