Originally posted by Edneeis
Well that is what the MouseHover event does, but if you want more control over the time it takes or really want to use the Timer then:
VB Code:
  1. Private WithEvents _Timer As New Timer
  2.  
  3.     Private Sub PictureBox1_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox1.MouseLeave
  4.         'although unless the button is in the picturebox they wont eb able to click it
  5.         'since it will disappear when they leave the picturebox to click it
  6.         Button1.Visible = False
  7.         _Timer.Enabled = False
  8.     End Sub
  9.  
  10.     Private Sub PictureBox1_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox1.MouseEnter
  11.         _Timer.Interval = 2000
  12.         _Timer.Enabled = True
  13.     End Sub
  14.  
  15.     Private Sub _Timer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles _Timer.Tick
  16.         Button1.Visible = True
  17.     End Sub
There is more than one Timer object so check which one you are using. I am using the one from the Windows.Forms namespace not the Threading namespace one.
hmm that one works? I was using teh one from System.Timers