Torna indietro   Hardware Upgrade Forum > Software > Programmazione

 Recensione OPPO Find X10 Pro Max: un top di gamma completo con tre fotocamere da 200MP
Recensione OPPO Find X10 Pro Max: un top di gamma completo con tre fotocamere da 200MP
OPPO ha appena lanciato sul mercato la nuova serie Find X10, che ha come smartphone premium il Find X10 Pro Max, uno smartphone completo, che fa del comparto fotografico il suo vero punto di forza. Ma sono tante le novità, tra cui l'AI che adesso diventa agentica. Ma andiamo a vedere nel dettaglio questo nuovo smartphone.
WoW Forever provato: il MMORPG che la community chiedeva da anni è arrivato
WoW Forever provato: il MMORPG che la community chiedeva da anni è arrivato
Abbiamo provato la beta di World of Warcraft: Forever, il Classic+ di Blizzard in arrivo il 4 novembre: la nuova razza Skyborne restituisce la sensazione di un gioco nuovo, ma le zone storiche conservano la noia divertita di Classic. Classi ribilanciate, sciamani anche nell'Alleanza e un motore grafico che in 4K gira bene anche su una RTX 3070. Cosa cambia in Forever? La risposta nell'articolo
TCL P80 Ultra: con un display AMOLED opaco è una gioia per gli occhi e per le dita
TCL P80 Ultra: con un display AMOLED opaco è una gioia per gli occhi e per le dita
TCL P80 Ultra abbina per la prima volta un pannello AMOLED alla tecnologia NXTPAPER con finitura opaca, affiancandoci una fotocamera periscopica da 50 MP con zoom ottico 3x, il SoC Dimensity 7400 Elite e una batteria da 5.800 mAh. Nella prova sul campo emergono luminosità di picco molto elevata, comparto fotografico solido per la fascia di prezzo e autonomia nella media, a fronte di velocità di scrittura dello storage piuttosto contenute
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 04-04-2009, 14:02   #1
jackk87
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 404
[VB.NET] Problema label trasparente in CF2.0 e picturebox

Buongiorno,
ho settato la propietà backcolor della label con colore trasparente sia da codice che dalle proprità ma niente lo sfondo resta bianco non trasparente...la label è situata su una picturbox quindi ho pensato di utilizzare come container la picturebox perchè la label sicuramente fa parte della form quindi mi da sfondo bianco perchè la form è bianca.
ho utilizzato label1.parent=picturbox1 ma mi da errore
ho provato label1.parent.control.containe(picturbox1) ma non funziona
dimenticavo stiamo parlando di compactframework 2.0 per windows mobile 6

qualcuno può aiutarmi?grazie in anticipo
jackk87 è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2009, 17:44   #2
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Beh, ma la PictureBox non è un container, perciò ovvio che da errore. Magari spiega cosa cerchi di ottenere e perchè ti serve una Label trasparente...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2009, 20:02   #3
jackk87
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 404
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Beh, ma la PictureBox non è un container, perciò ovvio che da errore. Magari spiega cosa cerchi di ottenere e perchè ti serve una Label trasparente...
Ciao Marco allora io ho uno sfondo gradiente fatto in photoshop quindi un'immagine e la inserisco nella picturebox e sopra ci devo mettere una label quindi deve avere lo sfondo della picturebox.
Da quanto programmo in vb la picturebox insieme ai frame è stata sempre un container infatti ho provato a farlo in framework(non in compact) ed è come dico io cioè se metto la label con sfondo trasparente è grigio perchè il form e grigio...poi nell'evento load della form vado a inserire label1.parent=picturebox1 e la label assume lo sfondo trasparente. Spero che sono stato chiaro e che riuscirai a risolvermi il problema che sei molto ma molto più in gamba di me ;-)
jackk87 è offline   Rispondi citando il messaggio o parte di esso
Old 05-04-2009, 11:18   #4
Ken1986
Member
 
Iscritto dal: Nov 2007
Messaggi: 122
label.backcolor = transperent
Così dovresti ottenre l'effetto che devideri
Ken1986 è offline   Rispondi citando il messaggio o parte di esso
Old 05-04-2009, 14:52   #5
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da jackk87 Guarda i messaggi
Ciao Marco allora io ho uno sfondo gradiente fatto in photoshop quindi un'immagine e la inserisco nella picturebox e sopra ci devo mettere una label quindi deve avere lo sfondo della picturebox.
Da quanto programmo in vb la picturebox insieme ai frame è stata sempre un container infatti ho provato a farlo in framework(non in compact) ed è come dico io cioè se metto la label con sfondo trasparente è grigio perchè il form e grigio...poi nell'evento load della form vado a inserire label1.parent=picturebox1 e la label assume lo sfondo trasparente. Spero che sono stato chiaro e che riuscirai a risolvermi il problema che sei molto ma molto più in gamba di me ;-)
Evidentemente hai ragione tu.
Non avendo mai usato una PictureBox come contenitore per altri controlli ( in .Net uso sempre Panel, TabControl ecc... ), non sospettavo proprio si potesse fare controllo.Parent = PictureBox ( eh, non si finisce mai di imparare ! ).
Ad ogni modo, dopo breve test su applicazione tipo Smart Device, se provo a farlo, mi va in errore...

In ogni caso escluderei l'uso di una Label, che, soprattutto in CF2, è un controllo un po' limitato ( non ha nemmeno l'evento Click() di base, e se vuoi usarlo come un Button, poi ? ).

In soldoni l'ho risolta così :

1. Uso una PictureBox di sfondo ( PictureBoxSfondo ), con un'immagine e che deve avere la proprietà SizeMode = Normal.

2. Anzichè Labels, uso delle altre PictureBox, che hanno maggiorni possibilità e posso usarle come pulsanti ( nell'esempio, una sola, la "PictureBoxButton" ). Vedremo che far assomigliare una PictureBox ad una Label è questione di poco...

3. Ovviamente la PictureBoxButton deve stare sopra ( contenuta completamente ) alla PictureBoxSfondo, e come questa, avere la proprietà SizeMode = Normal.

4. NON imposto PictureBoxButton.Parent = PictureBoxSfondo - Da evitare.

5. Gestisco tutto nell'evento Paint della PictureBoxButton :

Codice:
    Private Sub PictureBoxButton_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBoxButton.Paint

        'Porzione Immagine sottostante :
        Dim rX As Integer = PictureBoxButton.Left - PictureBoxSfondo.Left
        Dim rY As Integer = PictureBoxButton.Top - PictureBoxSfondo.Top
        Dim R As New Rectangle(rX, rY, PictureBoxButton.Width, PictureBoxButton.Height)
        Dim bmp As New Bitmap(R.Width, R.Height)
        e.Graphics.DrawImage(PictureBoxSfondo.Image, 0, 0, R, GraphicsUnit.Pixel)

        'Text del pulsante :
        Dim leftTesto As Single = 5
        Dim topTesto As Single = 5
        Dim F As New Font("Tahoma", 12, FontStyle.Bold)
        Dim SB As New SolidBrush(Color.White)
        e.Graphics.DrawString("Pulsante", F, SB, leftTesto, topTesto)

        'Cornice pulsante :
        Dim P As New Pen(Color.White, 1)
        e.Graphics.DrawRectangle(P, 0, 0, PictureBoxButton.Width - 1, PictureBoxButton.Height - 1)

    End Sub
6. Posso usarla come fosse un Button :
Codice:
    Private Sub PictureBoxButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBoxButton.Click
        MsgBox("Click")
    End Sub
E direi che il gioco è fatto.
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 05-04-2009, 15:52   #6
jackk87
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 404
Ciao Marco come dici tu non si finisce mai di imparare e io aggiungo anche che tu non finisci mai di stupirmi

grazie mille veramente
jackk87 è offline   Rispondi citando il messaggio o parte di esso
Old 06-04-2009, 12:56   #7
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210


Piccola correzione : quel Dim bmp As New Bitmap(R.Width, R.Height) è superfluo ( la fretta... ), perciò :

Codice:
   Private Sub PictureBoxButton_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBoxButton.Paint

        'Porzione Immagine sottostante :
        Dim rX As Integer = PictureBoxButton.Left - PictureBoxSfondo.Left
        Dim rY As Integer = PictureBoxButton.Top - PictureBoxSfondo.Top
        Dim R As New Rectangle(rX, rY, PictureBoxButton.Width, PictureBoxButton.Height)
        e.Graphics.DrawImage(PictureBoxSfondo.Image, 0, 0, R, GraphicsUnit.Pixel)

        'Text del pulsante :
        Dim leftTesto As Single = 5
        Dim topTesto As Single = 5
        Dim F As New Font("Tahoma", 12, FontStyle.Bold)
        Dim SB As New SolidBrush(Color.White)
        e.Graphics.DrawString("Pulsante", F, SB, leftTesto, topTesto)

        'Cornice pulsante :
        Dim P As New Pen(Color.White, 1)
        e.Graphics.DrawRectangle(P, 0, 0, PictureBoxButton.Width - 1, PictureBoxButton.Height - 1)

    End Sub
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 06-04-2009, 12:58   #8
jackk87
Senior Member
 
Iscritto dal: Jan 2007
Messaggi: 404
ok grazie mille oggi inserisco
jackk87 è offline   Rispondi citando il messaggio o parte di esso
Old 21-04-2009, 16:41   #9
Arsenico_IV
Member
 
Iscritto dal: Sep 2006
Messaggi: 209
Button trasparente

Mi riaggancio a questa discussione per rilanciare un mio problema analogo: io avrei la necessità di avere un button trasparente o una picturebox trasparente o comunque qualsiasi cosa che mi generi un evento al click.

Il mio problema è che questi oggetti (button, picturebox o altro) sarebbero più piccoli e sparsi un po' ovunque nel form.

In pratica dovrei avere una Picturebox nel form con un'immagine. Sopra a questa Picture box dovrebbero esserci dei button piccoli qua e là che non si devono vedere ma che se vengono cliccati generano un evento.

Si può fare? Non c'è una semplice proprietà di trasparenza?
Arsenico_IV è offline   Rispondi citando il messaggio o parte di esso
Old 21-04-2009, 17:56   #10
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da Arsenico_IV Guarda i messaggi
In pratica dovrei avere una Picturebox nel form con un'immagine. Sopra a questa Picture box dovrebbero esserci dei button piccoli qua e là che non si devono vedere ma che se vengono cliccati generano un evento.

Si può fare? Non c'è una semplice proprietà di trasparenza?
Sì, in pratica vuoi rendere sensibili al Click alcune porzioni dell'immagine sottostante senza che si vedano i pulsanti...
Puoi usare la mia soluzione anche in questo caso. Basta che ti limiti al disegno della porzione di Bmp nell'evento .Paint, escludendo invece il disegno della stringa di testo e della cornice, ottenendo pulsanti perfettamente trasparenti.
La proprietà di trasparenza c'è, ma spesso non funziona come molti sperano, bensì ripropone il colore o l'immagine di sfondo del container, e come abbiamo già visto, in CF2 usare una PictureBox come "container" da problemi.
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 22-04-2009, 10:03   #11
Arsenico_IV
Member
 
Iscritto dal: Sep 2006
Messaggi: 209
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Sì, in pratica vuoi rendere sensibili al Click alcune porzioni dell'immagine sottostante senza che si vedano i pulsanti...
Puoi usare la mia soluzione anche in questo caso. Basta che ti limiti al disegno della porzione di Bmp nell'evento .Paint, escludendo invece il disegno della stringa di testo e della cornice, ottenendo pulsanti perfettamente trasparenti.
La proprietà di trasparenza c'è, ma spesso non funziona come molti sperano, bensì ripropone il colore o l'immagine di sfondo del container, e come abbiamo già visto, in CF2 usare una PictureBox come "container" da problemi.
Però se faccio così, non viene bene perchè la porzione di immagine nel button o nel PictureBox adibito a button viene più ingrandita rispetto all'originale e quindi non si sovrappongono, anche se il SizeMode è Normal
Arsenico_IV è offline   Rispondi citando il messaggio o parte di esso
Old 22-04-2009, 11:22   #12
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da Arsenico_IV Guarda i messaggi
Però se faccio così, non viene bene perchè la porzione di immagine nel button o nel PictureBox adibito a button viene più ingrandita rispetto all'originale e quindi non si sovrappongono, anche se il SizeMode è Normal
Non mi risulta. SizeMode deve essere Normal in tutte le PictureBox utilizzate, sia quella di sfondo, sia quelle usate come pulsanti, inoltre devono avere BorderStyle = None.
Inoltre il problema a cui ti riferisci spesso è dovuto ad una cattiva interpretazione in fase di lettura dei file compressi, come il Jpg. E' successo anche a me con una jpg di sfondo presa così com'era dal Web.
Sicuramente se usi .bmp le porzioni non presentano distorsioni, e così anche usando .jpg prodotti da programmi seri, come ad esempio il metodo "Salva per Web" di Photoshop...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 23-04-2009, 08:40   #13
Arsenico_IV
Member
 
Iscritto dal: Sep 2006
Messaggi: 209
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Non mi risulta. SizeMode deve essere Normal in tutte le PictureBox utilizzate, sia quella di sfondo, sia quelle usate come pulsanti, inoltre devono avere BorderStyle = None.
Inoltre il problema a cui ti riferisci spesso è dovuto ad una cattiva interpretazione in fase di lettura dei file compressi, come il Jpg. E' successo anche a me con una jpg di sfondo presa così com'era dal Web.
Sicuramente se usi .bmp le porzioni non presentano distorsioni, e così anche usando .jpg prodotti da programmi seri, come ad esempio il metodo "Salva per Web" di Photoshop...
Hai ragione! Infatti cambiando immagine funziona perfettamente.
Grazie, ciao!
Arsenico_IV è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


 Recensione OPPO Find X10 Pro Max: un top di gamma completo con tre fotocamere da 200MP Recensione OPPO Find X10 Pro Max: un top di gam...
WoW Forever provato: il MMORPG che la community chiedeva da anni è arrivato WoW Forever provato: il MMORPG che la community ...
TCL P80 Ultra: con un display AMOLED opaco è una gioia per gli occhi e per le dita TCL P80 Ultra: con un display AMOLED opaco &egra...
HUAWEI MatePad Air recensione: OLED opaco e tastiera dedicata per lavorare meglio HUAWEI MatePad Air recensione: OLED opaco e tast...
NVIDIA RTX Spark: il PC Windows on ARM costruito per l'IA agentica NVIDIA RTX Spark: il PC Windows on ARM costruito...
iPhone Duo, il compromesso del display p...
Reolink OMVI 2i Ultra, la videocamera ib...
PowerToys 0.102: con un nuovo tool il mo...
Bose acquisisce Skullcandy per raggiunge...
I videogiochi di Star Wars dovranno sorp...
Cos'è Flint: l'AI locale per la programm...
Perplexity Computer ora gira offline sul...
LG lancia in Italia i nuovi laptop gram ...
Spotify dice addio ai vincoli di Android...
Leica Q3 43 Formula 1: carbonio, Microve...
Quattro nuovi smartphone e tablet da HON...
Xiaomi Redmi Note 17 in offerta su Amazo...
Fastweb + Vodafone potenzia il supercomp...
Europa e Taiwan uniscono le forze: nasce...
Pixel 9, Google estende di un anno il se...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 16:31.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v