Figurati se mi ricordavo il Link..........lo avevo sul PC ovviamente!
Io poi l'ho ovviamente personalizzato per il mio uso
![]()
Figurati se mi ricordavo il Link..........lo avevo sul PC ovviamente!
Io poi l'ho ovviamente personalizzato per il mio uso
![]()
Sbagliare è umano, perseverare è diabolico.
Perchè non posso avere il testo mezzo chiaro e mezzo scuro? Allora come fanno gli altri programmi? Ciao.
Ma chi ha detto che non si può fare scusa? :master:Perchè non posso avere il testo mezzo chiaro e mezzo scuro? Allora come fanno gli altri programmi? Ciao.
Sbagliare è umano, perseverare è diabolico.
Se marari quoti le frasi a cui rispondi magari si capicse un po meglio......![]()
A parte che comunque non ho capito bene quale sia il problema. Io ho una label che sia tale o scritta con il metodo .DrawString ho il problema del momento in cui la barra di progressione copre metà lettera (più o meno al 50%). Questo è il problema?? Se è questo è il problema le altre barre di progressione come fanno graficamente a risolvere il prblema? Posta una foto!?
Sbagliare è umano, perseverare è diabolico.
Allora adesso ho fatto così ed ho raggiunto il tuo stesso risultatto:
Ecco come è uscito:codice:Imports System.Drawing.Drawing2D Public Class Form1 Private Progress As Integer = 0 ' Contiene il valore in percentuale della progressbar Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint ' Crea una progressbar gradiente e.Graphics.FillRectangle(New LinearGradientBrush(Me.ClientRectangle, Color.Yellow, Color.Green, LinearGradientMode.Horizontal), New Rectangle(0, 0, Progress * ((PictureBox1.ClientRectangle.Size.Width + 2) / 100), PictureBox1.ClientRectangle.Size.Height)) ' Scrive l'avanzamento in percentuale al centro orizzontale e verticale della progressbar e.Graphics.DrawString(Progress & "%", New Font("Verdana", 8), Brushes.Red, New Point((PictureBox1.ClientRectangle.Size.Width - e.Graphics.MeasureString(Progress & "%", New Font("Verdana", 8)).Width) / 2, (PictureBox1.ClientRectangle.Size.Height - e.Graphics.MeasureString(Progress & "%", New Font("Verdana", 8)).Height) / 2)) End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick If Progress < 100 Then Progress += 1 ' Se è minore di 100 aumenta di 1 il valore della progressbar Else Progress = 0 ' Se è uguale a 100 porta a 0 il valora della progressbar End If PictureBox1.Invalidate() ' Genera l'evento paint End Sub End Class
Per vedere cosa vorrei fare io scarica questo esempio:
http://www.softpicks.net/software/VB...OCX--33179.htm
Il testo diventa a mano a mano bianco quando viene superato dalla barra di progresso.
Ok?![]()
Non vedo cosa ci sia di speciale in quelle 3 ProgressBar!
Dove vedi scusa che il testo diventa bianco man mano che la barra avanza nel link che hai postato?
Il colore del testo in base al valore lo puoi cambiare pure te nell'esempio che hai postato!
Sbagliare è umano, perseverare è diabolico.
Lo puoi fare benissimo anche tu, dividi la label in due label distinte (una label per la 1 cifra e una label per la 2 cifra) e gli assegni un colore in base alla posizione della ProgressBar o con il metodo .DrawString fai la stessa cosa. Si puo arrivare fino al punto di colorare solo i pixel desiderati, perchè se la barra di progressione è a metà lettera con la label non puoi colorare metà lettera.
![]()
Sbagliare è umano, perseverare è diabolico.
Aspetta, non ho capito bene... Con .DrawString posso colorare solo i pixel che voglio del testo? Grazie,.