Your SlideShare is downloading. ×
Modifcare un icona [vb6][santi caltabiano].txt   blocco note
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

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

161
views

Published on

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

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

Published in: Education

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
161
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Modifcare un Icona [VB6][Santi Caltabiano].txtMODIFICARE UNICONASupponiamo si voglia modificare un icona a runtime per assegnarla ad un altrocontrollo comead esempio un Picture o ad un Panel del controllo Status Bar o ad una Tab delcontrollo SSTAB.In questo esempio ad un icona verrà sovrapposto il numero 23 racchiuso in unqudratino rotto (perottenere leffetto notifica di FaceBook).Lidea è semplice:1) Un picture sorgente contenente una label con sfondo rosso2) Si carica limmagine nella picture sorgente3) Si copia il risultato in una picture di destinazione susando la funzioneBitBlt.PROCEDIMENTO:1) Si crea un progetto con un form2) 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=Command13) - 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 AsLong, _ ByVal ySrc As Long, _ ByVal dwRop As Long) As LongPrivate Sub Command1_Click() Set Image1.Picture = createIcon(23)End SubPrivate 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 allicona lbl.Caption = num Assegna dimensione controlli per la creazione dellimmagine picSrc.Height = 500 o laltezza 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 lalto lbl.Top = Abs(picSrc.ScaleHeight - lbl.Height - 40) Carica limmaggine nel controllo source picSrc.Picture = ImageListMain.ListImages(o.indiceIcona).Picture Copia limmagine 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.ImageEnd Function------------------------------------------------------------------------------------Questo meccanismo può essere utilizzato per assegnare limmagine ad un oggettoPanel di uncontrollo status bar per gestire un effetto notifica in una tray icons. Pagina 2

×