Como Llenar barra progreso mientras copia archivo pesado?
Publicado: 27 Nov 2014, 16:20
Buen día con todos, tengo una duda con respecto a que se llene la barra de progreso conforme el archivo se va copiando al destino.
Esto solo es ejemplo vano, para que puedan ayudarme si es posible.
Me refiero cuando se trata de copiar un archivo pesado, la barra de progreso vaya avanzando de acuerdo a la cantidad que ya esta copiandose.
Espero su pronta ayuda
Saludos...
Esto solo es ejemplo vano, para que puedan ayudarme si es posible.
Me refiero cuando se trata de copiar un archivo pesado, la barra de progreso vaya avanzando de acuerdo a la cantidad que ya esta copiandose.
Código: Seleccionar todo
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode", 1)
Global $guiPrincipal = GUICreate("Gui Ejemplo", 615, 147, 192, 124)
GUICtrlCreateLabel("Origen", 16, 32, 35, 17)
Global $inpOrigen = GUICtrlCreateInput("", 64, 32, 361, 21)
Global $btnOrigen = GUICtrlCreateButton("...", 432, 32, 35, 25)
GUICtrlCreateLabel("Destino", 16, 64, 40, 17)
Global $inpDestino = GUICtrlCreateInput("", 64, 64, 361, 21)
Global $btnDestino = GUICtrlCreateButton("...", 432, 64, 35, 25)
Global $btnCopiar = GUICtrlCreateButton("copiar", 473, 32, 103, 57)
Global $barraProgresso = GUICtrlCreateProgress(16, 112, 558, 17)
_cargarEventos()
GUISetState(@SW_SHOW)
While 1
Sleep(100)
WEnd
Func _cargarEventos()
GUISetOnEvent($GUI_EVENT_CLOSE, "_cerrarInterfaz")
GUICtrlSetOnEvent($btnOrigen, "_seleccionArchivo")
GUICtrlSetOnEvent($btnDestino, "_seleccionCarpeta")
GUICtrlSetOnEvent($btnCopiar, "_copiar")
EndFunc
Func _seleccionArchivo()
GUICtrlSetData($inpOrigen, FileOpenDialog("Seleccione el archivo", @DesktopDir & "", "File (*.*)", 1, "", $guiPrincipal))
EndFunc
Func _seleccionCarpeta()
GUICtrlSetData($inpDestino, FileSelectFolder("Seleccione el destino", @DesktopDir, 1, "", $guiPrincipal))
EndFunc
Func _copiar()
GUICtrlSetData($barraProgresso,FileCopy(GuictrlRead($inpOrigen),GUICtrlRead($inpDestino),1))
EndFunc
Func _cerrarInterfaz()
Exit
EndFunc ;==>_cerrarInterfaz
Saludos...
