elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Reloj analogico
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Reloj analogico  (Leído 3,417 veces)
jack06

Desconectado Desconectado

Mensajes: 133


anarkia99-Soft.


Ver Perfil
Reloj analogico
« en: 30 Julio 2008, 00:28 am »

Hola a todos bueno encontre este code x el google, es un reloj analogico la cual tiene algunos efecto y se mueve al mover el puntero pero lo que yo queria si alguien me puede ayudar con sta duda que tengo es de como puedo imprimirlo al lado derecho superior para que quede estatico como el reloj del vista. gracias de antemano.

Solo necesita un Timer1.. Interval = 40  ;D

Código:
Dim Ymouse, Xmouse, dy(30), dx(30), Da(30), Mo(30)
Dim Split1, Day1, Year1, Todaysdate, h, m, D, s, Face, Speed, n, scrll
Dim Dsplit, HandHeight, Handwidth, HandX, HandY, Step, currStep
Dim Test, ClockHeight, ClockWidth, ClockFromMouseY, ClockFromMouseX
Dim Fcol, Mcol, Scol, Hcol, Dcol
Private Type FL
  T(30) As Long
  Le(30) As Long
End Type

Dim FL As FL
Private Type HL
  T(30) As Long
  Le(30) As Long
End Type
Dim HL As HL

Private Type SL
  T(30) As Long
  Le(30) As Long
End Type

Dim SL As SL
Private Type ML
  T(30) As Long
  Le(30) As Long
End Type

Dim ML As ML
Private Type DL
  T(30) As Long
  Le(30) As Long
End Type

Dim DL As DL
Const PI = 3.1415

Private Sub Form_Load()
    Dcol = 150   '//color de la fecha.
    Fcol = vbBlue  '//color de la cara.
    Scol = 0    '//color de los segundos.
    Mcol = 0   '//color de los minutos.
    Hcol = 0   '//horas de color.
    ClockHeight = 600
    ClockWidth = 600
    ClockFromMouseY = 1200
    ClockFromMouseX = 600
   
    '//¡No altere nada abajo! ¡Las alineaciones serán perdidas!
    Da(1) = "DOMINGO": Da(2) = "LUNES": Da(3) = "MARTES": Da(4) = "MIÉRCOLES"
    Da(5) = "JUEVES": Da(6) = "VIERNES": Da(7) = "SÁBADO"
    Mo(1) = "ENERO": Mo(2) = "FEBRERO": Mo(3) = "MARSO"
    Mo(4) = "ABRIL": Mo(5) = "MAYO": Mo(6) = "JUNIO": Mo(7) = "JULIO"
    Mo(8) = "AGOSTO": Mo(9) = "SEPTIEMBRE": Mo(10) = "OCTUBRE"
    Mo(11) = "NOVIEMBRE": Mo(12) = "DICIEMBRE"
    Day1 = Day(Now)
    Year1 = Year(Now)
   
    If (Year1 < 2000) Then Year1 = Year1 + 1900
        Todaysdate = " " + Da(Weekday(Now)) + " " + Str(Day1) + " " + Mo(Month(Now)) + " " + Str(Year1)
        D = Todaysdate
        h = "..."
        m = "...."
        s = "....."
        Face = "1 2 3 4 5 6 7 8 9 101112  "
        Form1.Font = "Arial"
        Form1.FontSize = 8
        Speed = 0.6
        n = Len(Face) - 2
        Ymouse = 0
        Xmouse = 0
        scrll = 0
        Split1 = 360 / n
        Dsplit = 360 / Len(D)
        HandHeight = ClockHeight / 4.5
        Handwidth = ClockWidth / 4.5
        HandY = -7
        HandX = -2.5
        scrll = 0 '2 * Altura Del Reloj
        Step = 0.06
        currStep = 0
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Ymouse = Y + ClockFromMouseY ':acontecimiento Y + reloj del ratón Y;
    Xmouse = X + ClockFromMouseX ':acontecimiento X + reloj del ratón X;
End Sub

Private Sub Timer1_Timer()
    dy(0) = dy(0) + (Ymouse - dy(0)) * Speed
    dy(0) = Fix(dy(0))
    dx(0) = dx(0) + (Xmouse - dx(0)) * Speed
    dx(0) = Fix(dx(0))
   
    For i = 1 To Len(D) - 1
        dy(i) = dy(i) + (dy(i - 1) - dy(i)) * Speed
        dy(i) = Fix(dy(i))
        dx(i) = dx(i) + (dx(i - 1) - dx(i)) * Speed
        dx(i) = Fix(dx(i))
    Next i
   
    secs = Second(Now)
    sec = -1.57 + PI * secs / 30
    Mins = Minute(Now)
    Min = -1.57 + PI * Mins / 30
    hr = Hour(Now)
    hrs = -1.575 + PI * hr / 6 + PI * Int(Minute(Now)) / 360
   
        For i = 0 To n - 2
            FL.T(i) = dy(i) + ClockHeight * Sin(-1.0471 + i * Split1 * PI / 180) + scrll
            FL.Le(i) = dx(i) + ClockWidth * Cos(-1.0471 + i * Split1 * PI / 180)
        Next i
       
        For i = 0 To Len(h) - 1
            HL.T(i) = dy(i) + HandY + (i * HandHeight) * Sin(hrs) + scrll
            HL.Le(i) = dx(i) + HandX + (i * Handwidth) * Cos(hrs)
        Next i
       
        For i = 0 To Len(m) - 1
            ML.T(i) = dy(i) + HandY + (i * HandHeight) * Sin(Min) + scrll
            ML.Le(i) = dx(i) + HandX + (i * Handwidth) * Cos(Min)
        Next i
       
        For i = 0 To Len(s) - 1
            SL.T(i) = dy(i) + HandY + (i * HandHeight) * Sin(sec) + scrll
            SL.Le(i) = dx(i) + HandX + (i * Handwidth) * Cos(sec)
        Next i
       
        For i = 0 To Len(D) - 1
            DL.T(i) = dy(i) + ClockHeight * 1.5 * Sin(currStep + i * Dsplit * PI / 180) + scrll
            DL.Le(i) = dx(i) + ClockWidth * 1.5 * Cos(currStep + i * Dsplit * PI / 180)
        Next i
       
    currStep = currStep - Step
    P
End Sub

Private Function SP(ByVal ST As String, ByVal Nu As Integer, Optional K As Byte = 1) As String
    SP = Mid(ST, Nu + 1, K)
End Function

Private Sub P()
    Cls
   
    With Form1
        .FontBold = False
        .ForeColor = Dcol
        For i = 0 To Len(D) - 1
            .CurrentY = DL.T(i)
            .CurrentX = DL.Le(i)
            Print SP(D, i)
        Next i
       
        .ForeColor = Fcol
        For i = 0 To n - 1
            .CurrentY = FL.T(i)
            .CurrentX = FL.Le(i)
            If (i = 18 Or i = 20 Or i = 22) Then
                Print SP(Face, i, 2)
                i = i + 1
            Else
                Print SP(Face, i, 1)
            End If
        Next i
       
        .FontBold = True
        .ForeColor = Scol
   
        For i = 0 To Len(s) - 1
            .CurrentY = SL.T(i)
            .CurrentX = SL.Le(i)
            Print SP(s, i)
        Next i
        .ForeColor = Mcol
   
        For i = 0 To Len(m) - 1
            .CurrentY = ML.T(i)
            .CurrentX = ML.Le(i)
            Print SP(m, i)
        Next i
        .ForeColor = Hcol
   
        For i = 0 To Len(h) - 1
            .CurrentY = HL.T(i)
            .CurrentX = HL.Le(i)
            Print SP(h, i)
        Next i
    End With
End Sub


En línea

(̅_̅̅_̅(̅_̅_̅_̅_̅() ڪ €l $åßîø nø d nµn¢å tødø lø qµ£ Þî£n$å, Þ£®ø $î£mÞ®£ Þî£n$å tødø lø qµ£ d (̅_̅̅_̅(̅_̅_̅_̅_̅() ڪ
seba123neo
Moderador
***
Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Reloj analogico
« Respuesta #1 en: 30 Julio 2008, 00:52 am »

Hola,muy bueno el reloj,para que te quede ahi arriba podes agregar esto en el load..

Código
  1.        Ymouse = 1000
  2.        Xmouse = 1000
  3.        Me.Height = 2200
  4.        Me.Width = 2200
  5.        Me.Top = 0
  6.        Me.Left = Screen.Width - Me.Width

y sacale el evento mousemove entero...

saludos.


« Última modificación: 30 Julio 2008, 00:55 am por seba123neo » En línea

SKL (orignal)

Desconectado Desconectado

Mensajes: 259


UpLoadSourceCode


Ver Perfil WWW
Re: Reloj analogico
« Respuesta #2 en: 30 Julio 2008, 00:57 am »

EXELENTE


nunca vi algo asi en vb, si en flash, muy bien eh


saludos
En línea

Sancho.Mazorka


Desconectado Desconectado

Mensajes: 480


Gamer & Programador


Ver Perfil WWW
Re: Reloj analogico
« Respuesta #3 en: 1 Agosto 2008, 17:23 pm »

Espectacular esta! muy bueno si se adaptaria a toda la pantalla.

Se parece al cursor cuando entras a la web de utilisma...(mi vieja entra, no yo  :¬¬)


Sancho.Mazorka    :¬¬
En línea

Ganador Xeon Web Server ! ! !    Sancho.Mazorka :D
http://foro.elhacker.net/index.php/topic,171903.75.html


vivachapas


Desconectado Desconectado

Mensajes: 612



Ver Perfil
Re: Reloj analogico
« Respuesta #4 en: 1 Agosto 2008, 21:31 pm »

copadooooo :P

felicitaciones a quien lo haya hecho (la idea la habia visto ya, pero en VB es todo un logro xD jaja)
En línea

naderST


Desconectado Desconectado

Mensajes: 625



Ver Perfil WWW
Re: Reloj analogico
« Respuesta #5 en: 1 Agosto 2008, 23:00 pm »

Excelenteeeeeeee  :xD
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ver video analógico en Web
Desarrollo Web
TheChivo 3 2,386 Último mensaje 23 Noviembre 2013, 00:25 am
por EFEX
Reloj analógico inteligente, el smartwatch más buscado
Noticias
wolfbcn 0 1,361 Último mensaje 22 Enero 2017, 02:39 am
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines