Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.Net] Picturebox su controllo personalizzato
Forum - C# / VB.NET - [VB.Net] Picturebox su controllo personalizzato

Avatar
WCodeLyokoYT (Normal User)
Newbie


Messaggi: 16
Iscritto: 27/09/2014

Segnala al moderatore
Postato alle 19:03
Venerdì, 11/11/2016
Eccomi qua con l'ennesimo problema.

Allora, ho un controllo personalizzato con un'immagine di sfondo, impostata su "Stretch". Il programma analizza un file e aggiunge dei controlli personalizzati in un FlowLayoutPanel. Il problema è che ho una picturebox che si trova all'esterno (ma sovrapposta) del flowlayoutpanel, e dove dovrebbe essere trasparente in realtà cancella l'immagine del controllo personalizzato, mostrando solo lo sfondo del form. C'è un modo per risolvere? L'unica cosa che mi è venuta in mente è modificare l'immagine della picturebox, ma preferirei evitare...

Edit: Non mi fa rispondere, strano... Comunque immaginavo che non si capisse. Ho allegato una foto, sopra il controllo con la picturebox sovrapposta e sotto senza picturebox. Forse non si nota molto, ma nella prima foto il controllo risulta "troncato".


WCodeLyokoYT ha allegato un file: Immagine.png (62831 bytes)
Clicca qui per guardare l'immagine

Ultima modifica effettuata da WCodeLyokoYT il 11/11/2016 alle 20:06
PM
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1704
Iscritto: 04/05/2008

Up
0
Down
V
Segnala al moderatore
Postato alle 19:42
Venerdì, 11/11/2016
non si è capito una cippa.

cosa significa?

Testo quotato


e dove dovrebbe essere trasparente in realtà cancella l'immagine del controllo personalizzato, mostrando solo lo sfondo del form.



puoi spiegare meglio?
o magari illustri con una screenshoot


Edit:

Usa il Draw:

Codice sorgente - presumibilmente VB.NET

  1. 'Prendo l'immagine di sfondo del form
  2. Dim g As Graphics = Graphics.FromImage(Form1.BackgroundImage)
  3.  
  4.  
  5. 'Immagine del cerchio contenuta nella picturebox
  6. 'La carico in una variabile immagine
  7. Dim img As Image = Image.FromFile("cerchio.png")
  8.  
  9. 'Disegno tutto sulla nuova immagine
  10. g.DrawImage(Width - img.Width, 0, img.Width, img.Height)
  11.  
  12. 'Applico il nuovo background al Form
  13. Form1.BackgroundImage = img


Ultima modifica effettuata da Thejuster il 14/11/2016 alle 11:44
Immaginavo che non si capisse - WCodeLyokoYT - 11/11/16 20:03
guarda ora - Thejuster - 14/11/16 11:44


PM