Newsgroup: it.comp.lang.visual-basic
Titolo: [VB.NET] Domanda semplice ma non scontata...

Vi faccio una semplice domanda:
Come posso richiamare un evento???
Ve lo chiedo perchè dal timer1_tick ho cercato di richiamare un banale
form1_paint ma non ci sono mica riuscito...
--
Alessandro Vaia,
PANGUANETA S.p.a.

 form1_paint ma non ci sono mica riuscito...
Beh, mi sembra normale... prova a fare un Form.Update  che
dovrebbe risolvere.
Ciao
Andrea

 dovrebbe risolvere.
oppure anche (a memoria ;-) ) form1.invalidate
Salutoni
Sergio

 > Ve lo chiedo perchč dal timer1_tick ho cercato di richiamare un


La via più semplice è quella di invocare il metodo Invalidate del Form,
ilrisultato è quello di invocare l'evento Paint.
HTH
-- 
Corrado Cavalli [Microsoft .NET MVP]
UGIdotNET - 
http://www.ugidotnet.org

 form1_paint ma non ci sono mica riuscito...
Il passaggio diretto non è possibile perchè i due metodi, timer1_tick  e
form1_paint,   non hanno la stessa firma.
Un percorso (non sono riuscito a trovare di meglio , ma sembra che funzioni)
è utilizzare un metodo da tramite:
 Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As
System.EventArgs) Handles Timer1.Tick
      'Codice
            AddHandler Timer1.Tick, AddressOf prePaint
    End Sub
 Private Sub prePaint(ByVal sender As Object, ByVal e As System.EventArgs)
        Dim d As System.Windows.Forms.PaintEventArgs
        Form1_Paint(sender, d)
    End Sub
   Private Sub Form1_Paint(ByVal sender As Object, ByVal e As
System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint
        Dim x As Int16 = 3
        Dim y As Int16 = 8
        Dim f As Int16 = x * y
        Me.Text = f + Me.Text
    End Sub
Sicuramente è possibile di meglio.
Salve
giuseppeD

 ha scritto nel messaggio
news:Br0na.19874$LB6.5...@news1.tin.it...


 precisamente ho usato:
(snip)
Divertente....
Senza polemica alcuna, sarei curioso di sapere perchè un metodo suggerito da
Corrado funziona, mentre se lo suggerisco io no. :-)
Salutoni
Sergio

 Corrado funziona, mentre se lo suggerisco io no. :-)
Perchè si scrive di meno...:-P ;-)

 Perchč si scrive di meno...:-P ;-)
Insisto....
non č per essere a tutti i costi citato nei ringraziamenti: mi piacerebbe
sapere come mai, quando ti ho postato il form1.invalidate hai detto che non
ti funzionava, poi, tutto ad un tratto, ha cominciato ad andare....
Dire come mai una cosa prima non va, e poi sě, puň aiutare gli altri a non
commettere gli stessi errori.
Salutoni
Sergio

 commettere gli stessi errori.
Hai perfettamente ragione, il fatto č che stavo cercando di fare uno
"scrolling" di un grafico senza farlo sfarfallare, purtroppo non ci si
riesce perchč non si riesce ad invokare l'evento paint come se fosse un
metodo...
Questo mi ha fatto sorgere una marea di problemi che ancora non ho risolto
del tutto...
Invalidate forza si, il ridisegno del form, ma non permette un controllo
completo dell'evento paint...
Sto cercando adesso in tutti i modi di disegnare la griglia solo una volta
(tenendola visibile sul form), e ridisegnare solo il grafico (questo
alleggerirebbe il tutto...)
Non vorrei finire ad usare le DirectX per fare un semplice controllino del
tubero...

 controllo completo dell'evento paint...
Se il tuo grafico è contenuto in un controllo picture box, puoi limitarti ad
invalidare quello.
In aggiunta, il metodo invalidate può invalidare, e quindi far ridisegnare,
solo una parte del controllo (o form, visto che è un tipo di controllo
anch'ella).
Salutoni
Sergio

 anch'ella).
Hai ragione!!!
Ciò mi ha fatto venire un ideona...Se io mettessi la griglia sul Form, ed il
grafico su di un panel o una PictureBox (o cose così...), potrei, secondo
te, risolvere il problema dello sfarfallio???
N.B. Lo sfarfallio avviene probabilmente perchè deve tutte le volte
ridisegnare sia la griglia che il grafico...

 potrei, secondo te, risolvere il problema dello sfarfallio???
ma beato cielo.... prova e poi facci sapere :-)
Salutoni
Sergio

 prova e poi facci sapere :-)
Non va, anche se il Panel1 lo metto con lo sfondo trasparente si nota lo
sfarfallio del refresh...
Devo trovare un altro metodo, bah...-_-'