Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Grafico
Forum - C# / VB.NET - Grafico

Avatar
wolfslair (Normal User)
Rookie


Messaggi: 25
Iscritto: 02/06/2008

Segnala al moderatore
Postato alle 21:13
Domenica, 27/07/2008
Salve, ho creato un controllo (o meglio una bozza) che analizza la potenza del segnale Wireless.

Per ora il segnale lo simulo con una trackbar

Se salgo nessun problema, il problema si pone quando diminuisco il valore..
L'intenzione  era di impostare il backcolor di ogni rettangolo a "trasparente".
Ho provato ad impostare il backcolor= color.transparent ma senza risultato.

Grazie per l'eventuale aiuto !!

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 11:27
Lunedì, 28/07/2008
Scusa, ma di quale rettangolo si sta parlando? A parte la trackbar, non mi sembra che tu abbia menzionato niente sul colore...

PM Quote
Avatar
wolfslair (Normal User)
Rookie


Messaggi: 25
Iscritto: 02/06/2008

Segnala al moderatore
Postato alle 12:08
Lunedì, 28/07/2008
Che Razza di Post ho Scritto.! :-|
Eppure non avevo bevuto !! (commento :ot: )

Allora Cerchiamo di migliorarlo:

Sto Creando un controllo che dovrebbe segnalare la potenza del segnare wireless.
Il Controllo è composto da 7 PictureBox (p0:p6), di larghezza uguale e di altezza differente

Per ora ho messo una trackbar per simulare il segnale.
Ho una variabile "Passo" che è data dal massimo diviso le sette picture.

Al variare del valore della trackbar vado ad "illuminare" in modo graduale le picture.

Arrivando al Dunque il problema è che aumentanto il valore si illuminano correttamente le picture, diminuendolo no riesco a "regredire" ho provato ad invalidare i controlli o a mettere il backcolor= color.transparent ma senza un risultato buono.

Scusandomi per il vecchio Post, ringrazio le eventuali risposte

Ultima modifica effettuata da wolfslair il 28/07/2008 alle 12:09
PM Quote
Avatar
Mte90 (Member)
Guru


Messaggi: 1144
Iscritto: 25/03/2008

Segnala al moderatore
Postato alle 14:23
Lunedì, 28/07/2008
non fai prima a creare 7 immagini diverse con una sola picturebox che a seconda della potenza ne viene visualizzata una diversa?

PM Quote
Avatar
wolfslair (Normal User)
Rookie


Messaggi: 25
Iscritto: 02/06/2008

Segnala al moderatore
Postato alle 16:55
Lunedì, 28/07/2008
Per la Serie a volte la soluzione più semplice è la prima a cui non si pensa..

Comunque Grazie !!

PM Quote
Avatar
Mte90 (Member)
Guru


Messaggi: 1144
Iscritto: 25/03/2008

Segnala al moderatore
Postato alle 21:08
Lunedì, 28/07/2008
:rotfl:;):D:k:

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 11:40
Martedì, 29/07/2008
Potevi anche usare qualcosa con la classe Graphics:
Codice sorgente - presumibilmente VB.NET

  1. Dim Power As Int16 = 0
  2.     Private Sub imgRandom_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles imgRandom.Paint
  3.         Dim P As New Drawing2D.GraphicsPath
  4.  
  5.         P.AddLines(New Point() {New Point(50, 80), New Point(150, 80), New Point(150, 40)})
  6.         P.CloseFigure()
  7.  
  8.         Dim B As New LinearGradientBrush(New Point(50, 80), New Point(150, 81), Color.Green, Color.Transparent)
  9.         Dim Blend As New ColorBlend(3)
  10.  
  11.         Blend.Colors = New Color() {Color.Green, Color.Transparent, Color.Transparent}
  12.         Blend.Positions = New Single() {0, (Power / 7), 1}
  13.         B.InterpolationColors = Blend
  14.         e.Graphics.SmoothingMode = SmoothingMode.AntiAlias
  15.         e.Graphics.FillPath(B, P)
  16.     End Sub


Questo crea un trinagolo riempito di verde, sfumato a transparent: più Power è grande, più grande sarà l'area coperta di verde.


Il Totem ha allegato un file: Immagine.JPG (1740 bytes)
Clicca qui per guardare l'immagine
PM Quote