Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    24

    (VB) Sfondo trasparente caselle di testo

    Vorrei avere delle caselle di testo con sfondo trasparente...
    Come posso fare ??????

  2. #2
    Utente di HTML.it L'avatar di JamesD
    Registrato dal
    Oct 2001
    Messaggi
    415
    Si si intreressa anche a me!!!
    Anche per una label, se possibile!!
    Uso VB!

  3. #3
    Utente di HTML.it L'avatar di sebamix
    Registrato dal
    Aug 2000
    Messaggi
    1,028
    Originariamente inviato da JamesD
    Si si intreressa anche a me!!!
    Anche per una label, se possibile!!
    Uso VB!
    Mai provato a settare la property BackStyle di una label?
    Le text box standard non hanno sfondo trasparente

    http://forum.html.it/forum/showthrea...do+trasparente

    Magari su www.planetsourcecode.com , dopo tutto questo tempo, è saltato fuori qualcosa...


  4. #4
    fare questo genere di cose necessita di un uso massiccio della liberia grafica gdi
    il codice seguente serve a per una bitmap con sfondo trasparente ma penso che con un po' di tempo e una consistente dose di fantasia possiate adattarlo alle vostre esigenze

    codice:
    Option Explicit
    Public Type RECT
        Left As Long
        Top As Long
        Right As Long
        Bottom As Long
    End Type
    Public Declare Function BitBlt Lib "gdi32" _
        (ByVal hDCDest As Long, ByVal XDest As Long,
    ByVal YDest As Long, ByVal nWidth As Long,
    ByVal nHeight As Long, ByVal hDCSrc As Long,
    ByVal XSrc As Long, ByVal YSrc As Long, ByVal dwRop As Long) As Long
    Public Declare Function CreateBitmap Lib "gdi32" _
        (ByVal nWidth As Long, _
        ByVal nHeight As Long,
    ByVal nPlanes As Long, _
        ByVal nBitCount As Long,
    lpBits As Any) As Long
    Public Declare Function SetBkColor Lib "gdi32" _
        (ByVal hdc As Long, ByVal crColor As Long) As Long
    Public Declare Function SelectObject Lib "gdi32" _
        (ByVal hdc As Long, ByVal hObject As Long) As Long
    Public Declare Function CreateCompatibleBitmap Lib "gdi32" _
        (ByVal hdc As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long
    Public Declare Function CreateCompatibleDC Lib "gdi32" _
        (ByVal hdc As Long)As Long
    Public Declare Function DeleteDC Lib "gdi32" _
        (ByVal hdc As Long) As Long
    Public Declare Function DeleteObject Lib "gdi32" _
        (ByVal hObject As Long) As Long
    '-------------------------Form-------------------------
    Private Sub Command1_Click()
        Dim R As RECT
        With R
            .Left = 0
            .Top = 0
            .Right = Picture1.ScaleWidth
            .Bottom = Picture1.ScaleHeight
        End With
        TransparentBlt Form1.hdc, Form1.hdc, Picture1.hdc, R, 20, 20, vbWhite
    End Sub
    
    Private Sub TransparentBlt(OutDstDC As Long, _
            DstDC As Long, SrcDC As Long, SrcRect As RECT, _
            DstX As Integer, DstY As Integer, TransColor As Long)
        
         Dim nRet As Long, W As Integer, H As Integer
        Dim MonoMaskDC As Long, hMonoMask As Long
        Dim MonoInvDC As Long, hMonoInv As Long
        Dim ResultDstDC As Long, hResultDst As Long
        Dim ResultSrcDC As Long, hResultSrc As Long
        Dim hPrevMask As Long, hPrevInv As Long
        Dim hPrevSrc As Long, hPrevDst As Long
        W = SrcRect.Right - SrcRect.Left + 1
        H = SrcRect.Bottom - SrcRect.Top + 1
    
        MonoMaskDC = CreateCompatibleDC(DstDC)
        MonoInvDC = CreateCompatibleDC(DstDC)
        hMonoMask = CreateBitmap(W, H, 1, 1, ByVal 0&)
        hMonoInv = CreateBitmap(W, H, 1, 1, ByVal 0&)
        hPrevMask = SelectObject(MonoMaskDC, hMonoMask)
        hPrevInv = SelectObject(MonoInvDC, hMonoInv)
    
        ResultDstDC = CreateCompatibleDC(DstDC)
        ResultSrcDC = CreateCompatibleDC(DstDC)
        hResultDst = CreateCompatibleBitmap(DstDC, W, H)
        hResultSrc = CreateCompatibleBitmap(DstDC, W, H)
        hPrevDst = SelectObject(ResultDstDC, hResultDst)
        hPrevSrc = SelectObject(ResultSrcDC, hResultSrc)
    
        Dim OldBC As Long
        OldBC = SetBkColor(SrcDC, TransColor)
        nRet = BitBlt(MonoMaskDC, 0, 0, W, H, SrcDC, SrcRect.Left, SrcRect.Top, vbSrcCopy)
        TransColor = SetBkColor(SrcDC, OldBC)
    
        nRet = BitBlt(MonoInvDC, 0, 0, W, H, MonoMaskDC, 0, 0, vbNotSrcCopy)
    
        nRet = BitBlt(ResultDstDC, 0, 0, W, H, DstDC, DstX, DstY, vbSrcCopy)
    
        nRet = BitBlt(ResultDstDC, 0, 0, W, H, MonoMaskDC, 0, 0, vbSrcAnd)
    
        nRet = BitBlt(ResultSrcDC, 0, 0, W, H, SrcDC, SrcRect.Left, SrcRect.Top, vbSrcCopy)
        
        nRet = BitBlt(ResultSrcDC, 0, 0, W, H, MonoInvDC, 0, 0, vbSrcAnd)
        
        nRet = BitBlt(ResultDstDC, 0, 0, W, H, ResultSrcDC, 0, 0, vbSrcInvert)
        
        nRet = BitBlt(OutDstDC, DstX, DstY, W, H, ResultDstDC, 0, 0, vbSrcCopy)
        
        'clean up
        hMonoMask = SelectObject(MonoMaskDC, hPrevMask)
        DeleteObject hMonoMask
        hMonoInv = SelectObject(MonoInvDC, hPrevInv)
        DeleteObject hMonoInv
        hResultDst = SelectObject(ResultDstDC, hPrevDst)
        DeleteObject hResultDst
        hResultSrc = SelectObject(ResultSrcDC, hPrevSrc)
        DeleteObject hResultSrc
        DeleteDC MonoMaskDC
        DeleteDC MonoInvDC
        DeleteDC ResultDstDC
        DeleteDC ResultSrcDC
    End Sub
    Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te

  5. #5
    Utente di HTML.it L'avatar di sebamix
    Registrato dal
    Aug 2000
    Messaggi
    1,028
    Vedi firma CODE VB, ho aggiunto un paio di textbox trasparenti

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.