Página 1 de 1

Barra de progreso infinita (AYUDA)

Publicado: 28 Abr 2013, 04:32
por melvinhn
Bueno espero que la esten pasando bien
tengo el siguiente problema y no se ni como empezar
no se si alguien ya tiene el codigo o se le ha presentado
el mismo requirimiento mio.

la idea es hacer una gui el cual cuando ejecute una determinada opcion
me muestre una barra el cual se estra procesando pero que sea infinita no que se llene
si no que se este llenando como la siguientre imagen
infinita.jpg
infinita.jpg (9.79 KiB) Visto 2926 veces

Re: Barra de progreso infinita (AYUDA)

Publicado: 28 Abr 2013, 05:42
por Dany
creo que lo que quieres el algo así.

Código: Seleccionar todo

#AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>

_Main()

Func _Main()
    Local $iProgress_1, $iButton_1, $iButton_2, $iButton_3
    GUICreate("Simple use of a Marquee ProgressBar()", 240, 90, -1, -1)
    $iProgress_1 = GUICtrlCreateProgress(10, 10, 220, 20, $PBS_MARQUEE)
    $iButton_1 = GUICtrlCreateButton("&Start", 10, 60, 70, 25)
    $iButton_2 = GUICtrlCreateButton("S&top", 85, 60, 70, 25)
    $iButton_3 = GUICtrlCreateButton("Stop && &Reset", 160, 60, 70, 25)
    GUISetState(@SW_SHOW)

    While 1
        Switch GUIGetMsg()
            Case $GUI_EVENT_CLOSE
                Exit

            Case $iButton_1
                _ProgressMarquee_Start($iProgress_1)
                _Example()

            Case $iButton_2
                _ProgressMarquee_Stop($iProgress_1)

            Case $iButton_3
                _ProgressMarquee_Stop($iProgress_1, 1)

        EndSwitch
    WEnd
EndFunc   ;==>_Main

Func _Example()
    Sleep(4000)
    MsgBox(64, "Example", "Example")
EndFunc

Func _ProgressMarquee_Start($iControlID = -1)
    Local Const $PBM_SETMARQUEE = 1034
    Return GUICtrlSendMsg($iControlID, $PBM_SETMARQUEE, 1, 50)
EndFunc   ;==>_ProgressMarquee_Start

Func _ProgressMarquee_Stop($iControlID = -1, $iReset = 0)
    Local Const $PBS_MARQUEE = 0x0008, $PBM_SETMARQUEE = 1034
    GUICtrlSendMsg($iControlID, $PBM_SETMARQUEE, 0, 50)
    If $iReset = 1 Then
        Return GUICtrlSetStyle($iControlID, $PBS_MARQUEE)
    EndIf
    Return 1
EndFunc   ;==>_ProgressMarquee_Stop

creo que no funciona en XP.

Re: Barra de progreso infinita (AYUDA)

Publicado: 28 Abr 2013, 06:07
por melvinhn
Si funciona en XP

gracias por tu ayuda justo lo que necesitaba...