Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: Psyke1 en 10 Mayo 2010, 21:52 PM

Título: [ahora SI funciona] [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: Psyke1 en 10 Mayo 2010, 21:52 PM
Hola a todos, he estado trabajando para convertir tus Forms en persianas :o, si, como oyes, en persianas. :)
Ahora SI funciona, os lo prometo, sino, os devuelvo el dinero... :xD
IMPORTANTE: DEBEIS PONER LA PROPIEDAD BORDERSTYLE EN NONE
Aqui va el code, (esto deberia estar en módulo):
Código (vb) [Seleccionar]

' ////////////////////////////////////////////////////////////////
' // *Autor: *PsYkE1* (miguelin.majo@gmail.com)                 //
' // *Podeis agrandar o reducir el codigo, siempre y cuando se  //
' // respete la autoria y se me comuniquen esos cambios.        //
' // *Agradecimientos a BlackZeroX.                             //
' // *Visita http://foro.rthacker.net                           //
' ////////////////////////////////////////////////////////////////

Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Public Sub Persiana(miForm As Form, Vel As Integer, Desplegar As Boolean, Alto As Boolean _
, Acabar As Boolean)
   Dim Largo As Integer
   With miForm
       If Desplegar = True Then
           If Alto = True Then
               Largo = .Height
               .Height = 0
               While Not .Height >= Largo
                   .Height = .Height + 2
                   Sleep Vel
               Wend
           Else
               Largo = .Width
               .Width = 0
               While Not .Width >= Largo
                   .Width = .Width + 2
                   Sleep Vel
               Wend
           End If
       Else
           If Alto = True Then
               While Not .Height <= 10
                   .Height = .Height - 10
                   Sleep Vel
               Wend
           Else
               While Not .Width <= 10
                   .Width = .Width - 2
                   Sleep Vel
               Wend
           End If
       End If
   End With
   If Acabar = True Then End
End Sub


Bien, ahora para llamarlo desde un Form pondríamos esto:
Código (vb) [Seleccionar]

Private Sub Form_Activate()
   Call Persiana(Me, 5, False, True, True)
End Sub

( esta llamada se ejerceria sobre el Form actual, con una velocidad de 5(si quereis que vaya mas despacio aumentar el valor, no bajarlo ;)), para que se cierre la persiana, de abajo a arriba y que al completarse se finalice el programa)

Quizas alguien tenga alguna duda preguntar, que es gratis... ;)

Salu2! ;D
Título: Re: [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: ssccaann43 © en 10 Mayo 2010, 23:13 PM
Se me cuelga el VB... No me funciona...! :(
Título: Re: [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: Psyke1 en 10 Mayo 2010, 23:58 PM
mmmmmmm
q es exactamente lo que te pasa?¿ :huh:
recuerda que:
Cita de: *PsYkE1* en 10 Mayo 2010, 21:52 PM
IMPORTANTE: DEBEIS PONER LA PROPIEDAD BORDERSTYLE EN NONE
Seguramente lo que te pase es que se pliega, pero se queda asi, verdad¿?
Poniendo esto no deberias tener problemas...
Salu2! ;D
Título: Re: [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: agus0 en 11 Mayo 2010, 00:34 AM
Si a mi tambien se me cuelta, puse el BorderStyle en None, Pero se cierra igual. Tengo Windows 7
Título: Re: [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: Psyke1 en 11 Mayo 2010, 00:47 AM
mmmmmmmmm
comprendo, el caso es que a mi me funciona, bajaros el proyecto:


http://www.mediafire.com/?z12mynyjwgt (olvidadlo que tiene fallos, el code que esta posteado funciona bien)
A ver si asi... :-\

Salu2! ;D
Título: Re: [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: Psyke1 en 11 Mayo 2010, 00:58 AM
Ya se lo que pasa...
A que lo habeis llamado asi:

Código (vb) [Seleccionar]
Private Sub Form_Load()
   Call Persiana(Me, 10, False, True, True)
End Sub

Si creais un boton y pones la llamada funciona!! ;D
Y si soy sincero no se porque, se os ocurre algo?¿ :huh:

Salu2! ;D
Título: Re: [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: BlackZeroX en 11 Mayo 2010, 08:13 AM
son muchas lineas... mejor pon un timer via api en un modulo y con Mod lo haces no crees? se reduciria mucho el peso...

ejemplo:

Código (vb) [Seleccionar]


rem     en un Form agregar:
rem     1 PictureBox
rem     1 CommandButton
rem     1 Timer

option explicit

Private Expandir As Boolean
Private AuxNum As Long
Private Const LimAlt As Long = 4095
Private Const Velocity As Byte = 5
Private Expand As Boolean

Private Sub Command1_Click()
    With Timer1
        .Enabled = True
        .Interval = 1
    End With
    Expand = Not Expand
    AuxNum = Velocity
End Sub

Private Sub Form_Load()
    With Picture1
        .Height = LimAlt
        .Top = 0
        .Left = 0
    End With
    With Command1
        .Height = 256
        .Caption = "Ejemplo por BlackZeroX."
        .Width = 2500
        .Top = 0
        .Left = Picture1.Width + 500
    End With
    Me.Height = LimAlt + 1000
    Me.Width = Command1.Width + Command1.Left + 800
End Sub

Private Sub Timer1_Timer()
On Error GoTo Termina
    With Picture1
        If Not Expand Then
            .Height = .Height + AuxNum
            If .Height >= LimAlt Then
                .Height = LimAlt
                GoTo Termina
            End If
            AuxNum = AuxNum + Velocity
        Else
            .Height = .Height + AuxNum
            If .Height <= 1 Then
                .Height = 1
                GoTo Termina
            End If
            AuxNum = AuxNum - Velocity
        End If
    End With
Exit Sub
Termina:
    Err.Clear
    Timer1.Enabled = False
End Sub



Es solo un ejemplo se puede pasar a un Modulo De Clase pero por ahorita no cuento con mucho tiempo solo lo dejo asi.

Sangriento Infierno Lunar!¡.
Título: Re: [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: Psyke1 en 11 Mayo 2010, 09:33 AM
Gracias BlackZeroX▓▓▒▒░░ !!! ;-)
Esta muy bien el tuyo!! ;D
x cierto:
Cita de: *PsYkE1* en 11 Mayo 2010, 00:58 AM
Si creais un boton y pones la llamada funciona!! ;D
Y si soy sincero no se porque, se os ocurre algo?¿ :huh:

Salu2! ;)
Título: Re: [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: Karcrack en 11 Mayo 2010, 11:48 AM
http://msdn.microsoft.com/en-us/library/ms632669%28VS.85%29.aspx
AnimateWindow() permite hacer lo mismo si no me equivoco :)
Título: Re: [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: Psyke1 en 11 Mayo 2010, 13:22 PM
Gracias Karcrack!! ;D
voy a echarle un vistazo... ;)

Salu2! ;D
Título: Re: [ahora SI funciona] [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: Psyke1 en 12 Mayo 2010, 17:38 PM
Mirar el code
Hice unos arreglos con la ayuda de raul388 y funciona a la perfeccion! :laugh:
Espero que ahora les guste! :rolleyes:

Salu2 ;)
Título: Re: [ahora SI funciona] [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: raul338 en 12 Mayo 2010, 18:39 PM
:xD viste que se pudo (:huh:)

Nota, los que quieran ponerlo como animacion de entrada deben llamar al procedimiento en el evento activate del form, o sino en el Form_Load pero deben llamar a Me.Show antes ;-)
Título: Re: [ahora SI funciona] [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: ssccaann43 © en 12 Mayo 2010, 18:48 PM
jaja.. Buena...! Me gusto...! :rolleyes:
Título: Re: [ahora SI funciona] [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: BlackZeroX en 13 Mayo 2010, 04:00 AM
Cita de: raul338 en 12 Mayo 2010, 18:39 PM
:xD viste que se pudo (:huh:)

Nota, los que quieran ponerlo como animacion de entrada deben llamar al procedimiento en el evento activate del form, o sino en el Form_Load pero deben llamar a Me.Show antes ;-)

si llaman a load frm_Main donde frm_Main es el formulario la animacion no se viera xP (Almenos que se compruebe si esta visible o no el form dentro del proceso aninacion respectivo).

el evento form_load no creo que sirva si esta oculto xP.
y en form_activate se va a activar cadavez que se active la ventana es mejor llamar al proceso de forma externa dentro de un Sub main()

Sangriento Infierno Lunar!¡.
Título: Re: [ahora SI funciona] [SRC] + [Módulo] Persianas [VB6] [by *PsYkE1*]
Publicado por: Psyke1 en 13 Mayo 2010, 12:32 PM
Cita de: BlackZeroX▓▓▒▒░░ en 13 Mayo 2010, 04:00 AM
Cita de: raul338 en 12 Mayo 2010, 18:39 PM
:xD viste que se pudo (:huh:)

Nota, los que quieran ponerlo como animacion de entrada deben llamar al procedimiento en el evento activate del form, o sino en el Form_Load pero deben llamar a Me.Show antes ;-)

si llaman a load frm_Main donde frm_Main es el formulario la animacion no se viera xP (Almenos que se compruebe si esta visible o no el form dentro del proceso aninacion respectivo).

el evento form_load no creo que sirva si esta oculto xP.
y en form_activate se va a activar cadavez que se active la ventana es mejor llamar al proceso de forma externa dentro de un Sub main()

Sangriento Infierno Lunar!¡.
Exacto, el problema que tenia antes era que lo puse en Form_Load, entonces se activaba antes de que se mostara el Form :laugh:, para ello, hay tres soluciones:
*La que puse en el post de poner Me.Show en  Form_Load.
*Otra seria ponerlo en  Form_Acivate.
*(Ya me di cuenta de eso, aunque voy a cambiarlo como me dices tu que es mas profesional  :P)...

Salu2 y gracias!! ;)