Oppure

Loading
03/01/11 4:39
dedo93
Ciao a tutti,
sono nuovo qui.. iscritto apposta per cercare una soluzione a questo problema.
Ho una picturebox che carica un pezzo (32x64) di un immagine molto più grande (384x5440). Questa seconda immagine ha lo sfondo RGB(255,0,255) e nel momento in cui vado a prenderne il piccolo pezzo che mi serve dovrei toglierlo e renderlo trasparente.
Il codice che sto attualmente usando è questo:

Public Const CAPS1 = 94
Public Const C1_TRANSPARENT = &H1
Public Const NEWTRANSPARENT = 3
Dim dColor As Long
Dim dMode As Long
    If (GetDeviceCaps(picPic.hdc, CAPS1) And C1_TRANSPARENT) Then
        dMode = SetBkMode(picPic.hdc, NEWTRANSPARENT)
        dColor = SetBkColor(picPic.hdc, RGB(255, 0, 255))
        
            picSprites.Left = 128 * -1
            picSprites.top = 128* -1
            Call BitBlt(picPic.hdc, 0, 0, 32, 64, picSprites.hdc, 128, 128, vbSrcCopy)
        
        SetBkColor picPic.hdc, dColor
        SetBkMode picPic.hdc, dMode
    Else
        MsgBox "Your graphic drivers does not support transparency.", vbCritical
        Call GameDestroy
    End If


Non riesco proprio a venirne fuori, ho già provato TransparentBlt ma non riesco ad ottenere risultati buoni...
Grazie a tutti in anticipo
aaa
04/01/11 10:26
alexbluecolor
Up! xD
Comunque prova a ricontrollare tutte le righe...
L'errore lo troverai sicuramente! :pat:

Saluti, Alex :asd:
Ultima modifica effettuata da alexbluecolor 04/01/11 10:28
aaa