[SOLUCIONADO] Un ToolTip me está dando por...

Iniciado por Eleкtro, 24 Marzo 2013, 00:55 AM

0 Miembros y 2 Visitantes están viendo este tema.

Eleкtro

De la manera que me indicas, inactivandolo antes del case y activandolo en la etiqueta se consigue una mejora pero sigue habiendo problemas, ahora el tooltip sólo se muestra cuando la considión se cumple y se sigue mostrando si no disminuyo el valor, es decir, si no clicko en la flecha "abajo" del numericupdown.


Al final he tenido que hacer un timer para solucionarlo del todo, aquí dejo la solución:

Código (vbnet) [Seleccionar]
   Private Sub ComboBox_Measure_SelectedIndexChanged(sender As Object, e As EventArgs) Handles _
       ComboBox_Measure.SelectedIndexChanged, _
       NumericUpDown_Time.ValueChanged

       Select Case ComboBox_Measure.SelectedIndex
           Case 0
               ' Seconds
               Time_Out = (Convert_Time(NumericUpDown_Time.Value, S, MS))
               Time_Measure = S
           Case 1
               ' Minutes
               If NumericUpDown_Time.Value >= 35793 Then NumericUpDown_Time.Value = 35792 : GoTo ToolTip
               Time_Out = (Convert_Time(NumericUpDown_Time.Value, M, MS))
               Time_Measure = M
           Case 2
               ' Hours
               If NumericUpDown_Time.Value >= 597 Then NumericUpDown_Time.Value = 596 : GoTo ToolTip
               Time_Out = (Convert_Time(NumericUpDown_Time.Value, H, MS))
               Time_Measure = H
           Case 3
               ' Days
               If NumericUpDown_Time.Value >= 25 Then NumericUpDown_Time.Value = 24 : GoTo ToolTip
               Time_Out = (Convert_Time(NumericUpDown_Time.Value, H, MS)) * 24
               Time_Measure = H
           Case 4
               ' Weeks
               If NumericUpDown_Time.Value >= 4 Then NumericUpDown_Time.Value = 3 : GoTo ToolTip
               Time_Out = (Convert_Time(NumericUpDown_Time.Value, H, MS)) * 168
               Time_Measure = H
       End Select

       Exit Sub

ToolTip:
       Dim ToolTips_Timer As New Timer
       ToolTips_Timer.Interval = 1500
       AddHandler ToolTips_Timer.Tick, AddressOf ToolTips_Timer_Tick
       ToolTip_Form.Show("Max value", Me.NumericUpDown_Time, ToolTips_Timer.Interval)
       ToolTips_Timer.Start()

   End Sub


Código (vbnet) [Seleccionar]
  Private Sub ToolTips_Timer_Tick(sender As Object, e As EventArgs)
       ToolTip_Form.RemoveAll()
       sender.stop()
   End Sub








$Edu$

Que se te ha complicado xD Es que yo no usaria eso, por lo que veo en la imagen mas o menos entiendo que quieres hacer y no usaria ningun ToolTip, solo bloquearia para que no se pueda poner un valor maximo, es decir, lo mejor siempre es forzar el control en vez de andar permitiendolo y dejando mensajes.

Eleкtro

#12
Pero soy muy detallista y además de denegar quise mostrar una advertencia en forma de Tooltip, sin advertencias más bien parecería un bug en vez de una limitación xD.

Salu2








$Edu$

Bueno, o poner un label en vez de un tooltip, yo en la imagen que dejaste pensaba al principio que seria un label eso. Pero bueno, si ya quedo bien, todo perfect :P