SlideShare una empresa de Scribd logo
1 de 2
Descargar para leer sin conexión
Modifcare un Icona [VB6][Santi Caltabiano].txt
MODIFICARE UN'ICONA
Supponiamo si voglia modificare un icona a runtime per assegnarla ad un altro
controllo come
ad esempio un Picture o ad un Panel del controllo Status Bar o ad una Tab del
controllo SSTAB.

In questo esempio ad un icona verrà sovrapposto il numero 23 racchiuso in un
qudratino rotto (per
ottenere l'effetto notifica di FaceBook).
L'idea è semplice:
1) Un picture sorgente contenente una label con sfondo rosso
2) Si carica l'immagine nella picture sorgente
3) Si copia il risultato in una picture di destinazione susando la funzione
BitBlt.


PROCEDIMENTO:
1) Si crea un progetto con un form
2) Ai Aggiungono i controlli
   - Picture: name=picSrc, Visible=False, AutoRedraw=False, Height=200
   - Picture: name=picDes, Visible=False, AutoRedraw=True, Height=200
   - Label: name=lbl, autoSize=True, backcolor=vbred; Font a 7pt
   - Command: name=Command1
3) - Image: name=Image1 (per mostrare il risultato)
4) Codice contenuto nel modulo del form:
--------------------------------------------------------------------------------
----
Private Declare Function BitBlt Lib "gdi32" (ByVal   hDestDC As Long, _
                                             ByVal   X As Long, ByVal Y As Long, _
                                             ByVal   nWidth As Long, _
                                             ByVal   nHeight As Long, _
                                             ByVal   hSrcDC As Long, ByVal xSrc As
Long, _
                                             ByVal   ySrc As Long, _
                                             ByVal   dwRop As Long) As Long



Private Sub Command1_Click()
    Set Image1.Picture = createIcon(23)
End Sub
Private Function createIcon(ByVal num As Long) As IPictureDisp
    ' Mostra i picture (altrimenti non funziona)
    picSrc.Visible = True
    picDes.Visible = True
    ' Ripulisce controlli
    Set picSrc.Picture = Nothing
    Set picDes.Picture = Nothing
    ' Numero che verrà sovrapposto all'icona
    lbl.Caption = num
    ' Assegna dimensione controlli per la creazione dell'immagine
    picSrc.Height = 500 ' o l'altezza del controllo finale
    picSrc.Width = 500 ' o la larghezza del controllo finale
    picDes.Height = picSrc.Width
    picDes.Width = picSrc.Width
    ' Centra la label orizzontalmente
    lbl.Left = Abs(picSrc.ScaleWidth - lbl.Width) / 2
    ' Label in basso e spostata un po' verso l'alto
    lbl.Top = Abs(picSrc.ScaleHeight - lbl.Height - 40)
    ' Carica l'immaggine nel controllo source
    picSrc.Picture = ImageListMain.ListImages(o.indiceIcona).Picture
    ' Copia l'immagine nel controllo destinazione
    BitBlt picDes.hDC, 0, 0, 200, 200, picSrc.hDC, 0, 0, &HCC0020
    ' Nasconde controlli picture
    picSrc.Visible = False
    picDes.Visible = False
                                    Pagina 1
Modifcare un Icona [VB6][Santi Caltabiano].txt
    ' Restituisce il risultato
    Set createIcon = picDes.Image
End Function

--------------------------------------------------------------------------------
----


Questo meccanismo può essere utilizzato per assegnare l'immagine ad un oggetto
Panel di un
controllo status bar per gestire un effetto notifica in una tray icons.




                                    Pagina 2

Más contenido relacionado

Destacado (7)

CERT_03.PDF
CERT_03.PDFCERT_03.PDF
CERT_03.PDF
 
Props and costume
Props and costume Props and costume
Props and costume
 
Link. java server faces [santi caltabiano]
  Link. java server faces [santi caltabiano]  Link. java server faces [santi caltabiano]
Link. java server faces [santi caltabiano]
 
Anteprima con flash viewer [by sc]
Anteprima con flash viewer [by sc]Anteprima con flash viewer [by sc]
Anteprima con flash viewer [by sc]
 
Jasper report dependencies [by sc]
Jasper report dependencies [by sc]Jasper report dependencies [by sc]
Jasper report dependencies [by sc]
 
Jasper report anteprima con flash viewer [bysc]
Jasper report   anteprima con flash viewer [bysc]Jasper report   anteprima con flash viewer [bysc]
Jasper report anteprima con flash viewer [bysc]
 
Link. portali
  Link. portali  Link. portali
Link. portali
 

Más de santi caltabiano

Más de santi caltabiano (20)

Esercizio semicirconferenze tangenti [sc]
Esercizio   semicirconferenze tangenti [sc]Esercizio   semicirconferenze tangenti [sc]
Esercizio semicirconferenze tangenti [sc]
 
Area di un segmento parabolico
Area di un segmento parabolicoArea di un segmento parabolico
Area di un segmento parabolico
 
L'equilibrio nei fluidi (parte03) [prof. santi caltabiano]
L'equilibrio nei fluidi (parte03) [prof. santi caltabiano]L'equilibrio nei fluidi (parte03) [prof. santi caltabiano]
L'equilibrio nei fluidi (parte03) [prof. santi caltabiano]
 
L'equilibrio nei fluidi (parte02) [prof. santi caltabiano]
L'equilibrio nei fluidi (parte02) [prof. santi caltabiano]L'equilibrio nei fluidi (parte02) [prof. santi caltabiano]
L'equilibrio nei fluidi (parte02) [prof. santi caltabiano]
 
L'equilibrio nei fluidi (parte01) [prof. santi caltabiano]
L'equilibrio nei fluidi (parte01) [prof. santi caltabiano]L'equilibrio nei fluidi (parte01) [prof. santi caltabiano]
L'equilibrio nei fluidi (parte01) [prof. santi caltabiano]
 
Legge di gravitazione universale [prof. santi caltabiano]
Legge di gravitazione universale [prof. santi caltabiano]Legge di gravitazione universale [prof. santi caltabiano]
Legge di gravitazione universale [prof. santi caltabiano]
 
Le tre leggi di keplero [prof. santi caltabiano]
Le tre leggi di keplero [prof. santi caltabiano]Le tre leggi di keplero [prof. santi caltabiano]
Le tre leggi di keplero [prof. santi caltabiano]
 
Caduta di un corpo [prof. santi caltabiano]
Caduta di un corpo [prof. santi caltabiano]Caduta di un corpo [prof. santi caltabiano]
Caduta di un corpo [prof. santi caltabiano]
 
Applicazione dei principi della dinamica [prof. santi caltabiano]
Applicazione dei principi  della dinamica [prof. santi caltabiano]Applicazione dei principi  della dinamica [prof. santi caltabiano]
Applicazione dei principi della dinamica [prof. santi caltabiano]
 
Principi della dinamica [prof. santi caltabiano]
Principi della dinamica [prof. santi caltabiano]Principi della dinamica [prof. santi caltabiano]
Principi della dinamica [prof. santi caltabiano]
 
Le leve [prof. santi caltabiano]
Le leve [prof. santi caltabiano]Le leve [prof. santi caltabiano]
Le leve [prof. santi caltabiano]
 
Coppie di forze [prof. santi caltabiano]
Coppie di forze [prof. santi caltabiano]Coppie di forze [prof. santi caltabiano]
Coppie di forze [prof. santi caltabiano]
 
Momento di una forza [prof. santi caltabiano]
Momento di una forza [prof. santi caltabiano]Momento di una forza [prof. santi caltabiano]
Momento di una forza [prof. santi caltabiano]
 
Equilibrio sul piano inclinato [s. caltabiano]
Equilibrio sul piano inclinato [s. caltabiano]Equilibrio sul piano inclinato [s. caltabiano]
Equilibrio sul piano inclinato [s. caltabiano]
 
La piramide di numeri (prof. s. caltabiano)
La piramide di numeri (prof. s. caltabiano) La piramide di numeri (prof. s. caltabiano)
La piramide di numeri (prof. s. caltabiano)
 
20 dinamica forze d'attrito
20 dinamica   forze d'attrito20 dinamica   forze d'attrito
20 dinamica forze d'attrito
 
10 dinamica concetto di forza
10 dinamica   concetto di forza10 dinamica   concetto di forza
10 dinamica concetto di forza
 
Vettori
VettoriVettori
Vettori
 
00130 cinematica moto rettilineo e velocita media
00130 cinematica   moto rettilineo e velocita media00130 cinematica   moto rettilineo e velocita media
00130 cinematica moto rettilineo e velocita media
 
50 cinematica moto rettilineo uniformemente accelerato
50 cinematica   moto rettilineo uniformemente accelerato50 cinematica   moto rettilineo uniformemente accelerato
50 cinematica moto rettilineo uniformemente accelerato
 

Último

case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
giorgiadeascaniis59
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
lorenzodemidio01
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
lorenzodemidio01
 

Último (19)

Presentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione CivicaPresentazioni Efficaci e lezioni di Educazione Civica
Presentazioni Efficaci e lezioni di Educazione Civica
 
Aristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptxAristotele, vita e opere e fisica...pptx
Aristotele, vita e opere e fisica...pptx
 
Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................
 
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptxProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
 
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptxLorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
Lorenzo D'Emidio- Lavoro sulla Bioarchittetura.pptx
 
Lorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptxLorenzo D'Emidio_Vita e opere di Aristotele.pptx
Lorenzo D'Emidio_Vita e opere di Aristotele.pptx
 
Scrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibileScrittura seo e scrittura accessibile
Scrittura seo e scrittura accessibile
 
Descrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptxDescrizione Piccolo teorema di Talete.pptx
Descrizione Piccolo teorema di Talete.pptx
 
Quadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceoQuadrilateri e isometrie studente di liceo
Quadrilateri e isometrie studente di liceo
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
 
Tosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptxTosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptx
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
 
Lorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptxLorenzo D'Emidio_Francesco Petrarca.pptx
Lorenzo D'Emidio_Francesco Petrarca.pptx
 
LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................
 
Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.
 
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptxLorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
Lorenzo D'Emidio_Vita di Cristoforo Colombo.pptx
 
discorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptxdiscorso generale sulla fisica e le discipline.pptx
discorso generale sulla fisica e le discipline.pptx
 
descrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptxdescrizioni della antica civiltà dei sumeri.pptx
descrizioni della antica civiltà dei sumeri.pptx
 

Modifcare un icona [vb6][santi caltabiano].txt blocco note

  • 1. Modifcare un Icona [VB6][Santi Caltabiano].txt MODIFICARE UN'ICONA Supponiamo si voglia modificare un icona a runtime per assegnarla ad un altro controllo come ad esempio un Picture o ad un Panel del controllo Status Bar o ad una Tab del controllo SSTAB. In questo esempio ad un icona verrà sovrapposto il numero 23 racchiuso in un qudratino rotto (per ottenere l'effetto notifica di FaceBook). L'idea è semplice: 1) Un picture sorgente contenente una label con sfondo rosso 2) Si carica l'immagine nella picture sorgente 3) Si copia il risultato in una picture di destinazione susando la funzione BitBlt. PROCEDIMENTO: 1) Si crea un progetto con un form 2) Ai Aggiungono i controlli - Picture: name=picSrc, Visible=False, AutoRedraw=False, Height=200 - Picture: name=picDes, Visible=False, AutoRedraw=True, Height=200 - Label: name=lbl, autoSize=True, backcolor=vbred; Font a 7pt - Command: name=Command1 3) - Image: name=Image1 (per mostrare il risultato) 4) Codice contenuto nel modulo del form: -------------------------------------------------------------------------------- ---- Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, _ ByVal X As Long, ByVal Y As Long, _ ByVal nWidth As Long, _ ByVal nHeight As Long, _ ByVal hSrcDC As Long, ByVal xSrc As Long, _ ByVal ySrc As Long, _ ByVal dwRop As Long) As Long Private Sub Command1_Click() Set Image1.Picture = createIcon(23) End Sub Private Function createIcon(ByVal num As Long) As IPictureDisp ' Mostra i picture (altrimenti non funziona) picSrc.Visible = True picDes.Visible = True ' Ripulisce controlli Set picSrc.Picture = Nothing Set picDes.Picture = Nothing ' Numero che verrà sovrapposto all'icona lbl.Caption = num ' Assegna dimensione controlli per la creazione dell'immagine picSrc.Height = 500 ' o l'altezza del controllo finale picSrc.Width = 500 ' o la larghezza del controllo finale picDes.Height = picSrc.Width picDes.Width = picSrc.Width ' Centra la label orizzontalmente lbl.Left = Abs(picSrc.ScaleWidth - lbl.Width) / 2 ' Label in basso e spostata un po' verso l'alto lbl.Top = Abs(picSrc.ScaleHeight - lbl.Height - 40) ' Carica l'immaggine nel controllo source picSrc.Picture = ImageListMain.ListImages(o.indiceIcona).Picture ' Copia l'immagine nel controllo destinazione BitBlt picDes.hDC, 0, 0, 200, 200, picSrc.hDC, 0, 0, &HCC0020 ' Nasconde controlli picture picSrc.Visible = False picDes.Visible = False Pagina 1
  • 2. Modifcare un Icona [VB6][Santi Caltabiano].txt ' Restituisce il risultato Set createIcon = picDes.Image End Function -------------------------------------------------------------------------------- ---- Questo meccanismo può essere utilizzato per assegnare l'immagine ad un oggetto Panel di un controllo status bar per gestire un effetto notifica in una tray icons. Pagina 2