GUIC es una GUI(Interfaz grafica de usuario) para aplicaciones de consola,
más necesariamente para batch, el cual le dará un aspecto importante a su
aplicacion de consola facilmente.
Está creado con colous v5
Bueno , paso a explicar su uso:
Primero hay que incluir 2 fragmentos de codigos a tu bat:
Código:
@echo off
===============================================
:::::::::Codigo necesario para el uso del GUI:::::::::::
===============================================
setlocal enabledelayedexpansion
If not exist "%windir%\recibe.bat" (copy /y "%cd%\GUI\*.*" "%windir%\")
colous version
if %errorlevel% NEQ 5 (exit)
call:restablecer
===============================================
::Acá se puede codear libremente
:: ASDASD
:: xDD
::Ahora viene el segundo fragmento
===============================================
:::::::::Codigo necesario para el uso del GUI:::::::::::::::::::::
===============================================
:recibe
for /f "tokens=*" %%a in ('recibe.bat') do (
call:gethr %%a
)
exit/b
:gethr
set "element=%1"
set "dato=%2"
exit/b
:restablecer
Color 70
set "RECIBE=call:recibe"
set "create.boton=call boton.bat"
set "create.boton2=call boton2.bat"
set "create.checkbox=call checkbox.bat"
set "create.textbox=call box.bat"
if not exist objects.gui (exit/b)
for /f "tokens=*" %%a in ('type objects.gui') do (del /q /f /s "%%a">nul)
del /q /f /s "objects.gui">nul
del /q /f /s text.t>nul
echo.>"%windir%\test.check"
del /q /f "%windir%\*.check">nul
exit/b
===============================================
Listo, ahora tenes la posibilidad de crear elementos, limpiar los restos de los elementos creados anteriormente o eliminar los restos que quedan, antes de salir del programa.
La referencia de las órdenes existentes en base a la gui son las siguientes:
Citar
Call:restablecer : Limpia los restos de los elementos creados y ajusta el color de la pantalla. Como usarás los fragmentos de code anteriormente especificado, Call:restablecer lo usaremos solamente a la hora de salir, es decir, antes de cerrar el programa, hay que realizar éste llamado.
!RECIBE! : Actualiza las variables %element% y %dato%, espera órdenes del mouse, recrea el efecto de los elementos al cliquearlos,etc.
Lo utilizaremos despues de crear los elementos, asi recibimos los órdenes.
%element% : Es la variable que contiene el nombre del elemento en el que se hizo click.
%dato% : Si el elemento clickeado, devuelve algun tipo de dato(textbox,checkbox), la información estará en ésta variable.
Creacion de elementos:
!CREATE.BOTON! X Y "Texto_del_boton" nopress [Nombre_del_boton] : Crea un boton.
X : La posicion X(columna) en donde crear el boton.
Y : La posicion Y(fila) en donde crear el boton.
"Texto_del_boton" : Aquí iría el texto(caption) que tendrá el boton.
nopress : Éste parametro lo dejaremos así como está.
[Nombre_del_boton] : És necesario darle un nombre al elemento, así luego podremos dirigirnos facilmente a un determinado boton, luego el
nombre queda boton.[nombre]
!CREATE.BOTON2! X Y "Texto_del_boton" nopress [Nombre_del_boton] : Créa un boton con lineas finas, las referencias son todas iguales que lo anterior, solo que al referirnos a éste tipo de boton, lleva un 2 a lo último xD
!CREATE.TEXTBOX! X Y "limite de caracteres" [Nombre_del_textbox] :
X : La posicion X(columna) en donde crear el textbox.
Y : La posicion Y(fila) en donde crear el textbox.
"limite de caracteres" : És el numero máximo de caracteres permitidos.
[Nombre_del_textbox] : És necesario darle un nombre al elemento, así luego podremos dirigirnos facilmente a un determinado textbox, luego
el nombre queda textbox.[nombre]
!CREATE.CHECKBOX! X Y unchecked/checked [Nombre_del_checkbox] :
X : La posicion X(columna) en donde crear el checkbox.
Y : La posicion Y(fila) en donde crear el checkbox.
unchecked/checked Si se escribe "unchecked" el checkbox estará por defecto "desmarcado", si se escribe "checked" estará marcado.
[Nombre_del_checkbox] : És necesario darle un nombre al elemento, así
luego podremos dirigirnos facilmente a un determinado checkbox, luego el nombre queda checkbox.[nombre]
!RECIBE! : Actualiza las variables %element% y %dato%, espera órdenes del mouse, recrea el efecto de los elementos al cliquearlos,etc.
Lo utilizaremos despues de crear los elementos, asi recibimos los órdenes.
%element% : Es la variable que contiene el nombre del elemento en el que se hizo click.
%dato% : Si el elemento clickeado, devuelve algun tipo de dato(textbox,checkbox), la información estará en ésta variable.
Creacion de elementos:
!CREATE.BOTON! X Y "Texto_del_boton" nopress [Nombre_del_boton] : Crea un boton.
X : La posicion X(columna) en donde crear el boton.
Y : La posicion Y(fila) en donde crear el boton.
"Texto_del_boton" : Aquí iría el texto(caption) que tendrá el boton.
nopress : Éste parametro lo dejaremos así como está.
[Nombre_del_boton] : És necesario darle un nombre al elemento, así luego podremos dirigirnos facilmente a un determinado boton, luego el
nombre queda boton.[nombre]
!CREATE.BOTON2! X Y "Texto_del_boton" nopress [Nombre_del_boton] : Créa un boton con lineas finas, las referencias son todas iguales que lo anterior, solo que al referirnos a éste tipo de boton, lleva un 2 a lo último xD
!CREATE.TEXTBOX! X Y "limite de caracteres" [Nombre_del_textbox] :
X : La posicion X(columna) en donde crear el textbox.
Y : La posicion Y(fila) en donde crear el textbox.
"limite de caracteres" : És el numero máximo de caracteres permitidos.
[Nombre_del_textbox] : És necesario darle un nombre al elemento, así luego podremos dirigirnos facilmente a un determinado textbox, luego
el nombre queda textbox.[nombre]
!CREATE.CHECKBOX! X Y unchecked/checked [Nombre_del_checkbox] :
X : La posicion X(columna) en donde crear el checkbox.
Y : La posicion Y(fila) en donde crear el checkbox.
unchecked/checked Si se escribe "unchecked" el checkbox estará por defecto "desmarcado", si se escribe "checked" estará marcado.
[Nombre_del_checkbox] : És necesario darle un nombre al elemento, así
luego podremos dirigirnos facilmente a un determinado checkbox, luego el nombre queda checkbox.[nombre]
Listo, ya tenemos las referencias, ahora pasaré a explicar como usarlas.
1º : Tener los 2 fragmentos del code.
2º : Crear los elementos a usar, y ponerles nombres especificos.
3º : Por preferencia , crear un bucle, adentro del bucle, hacer la llamada !RECIBE!
4º : Despues de !RECIBE!, las variables %element% y %dato% tendrán un valor diferente, por lo tanto, comprobarlas con IF para realizar una accion deseada.
Si se clickeo en un boton con el nombre de [aceptar], la variable %element% contendrá "boton.[aceptar]" asi que nos damos cuenta que devuelve con el formato "elemento.nombre"
Si se clickea un textbox, tendrá su respectivo nombre de elemento como lo anterior, pero con un detalle diferente, lo que se escribió en el textbox está en la variable %dato%, lo mismo pasa con los checkbox.
Ahora dejo un ejemplo simple para que lo entiendan :
Código:
@echo off
=====================================
:::::::::Codigo necesario para el uso del GUI:::::::::::
=====================================
setlocal enabledelayedexpansion
If not exist "%windir%\recibe.bat" (copy /y "%cd%\GUI\*.*" "%windir%\">nul)
colous version
if %errorlevel% NEQ 5 (exit)
call:restablecer
=====================================
::::CREAMOS UN PAR DE ELEMENTOS:::
!CREATE.BOTON! 1 1 "IR a Google" nopress [google]
!CREATE.BOTON2! 1 4 " IR a Bing " nopress [bing]
!CREATE.TEXTBOX! 1 7 20 [texto_test]
!CREATE.CHECKBOX! 1 10 unchecked [marcar]&echo.Marcame!!
!CREATE.BOTON! 1 20 "SALIR" nopress [quit]
:MENU
!RECIBE! &::Acá actualizamos las variables, se pausará el code hasta que el usuario haga click
::::::::::Ahora, la variable %element% contiene "tipo_de_elemento.[nombre]"
if "%element%"=="boton.[google]" (start "" "www.google.com")
if "%element%"=="boton2.[bing]" (start "" "www.bing.com")
if "%element%"=="textbox.[texto_test]" (msg * %dato%)
if "%element%"=="checkbox.[marcar]" (msg * %dato%)
if "%element%"=="boton.[quit]" (
::Elimina basura y cierra::
call:restablecer
exit
)
goto:MENU
==========================================
:::::::::Codigo necesario para el uso del GUI:::::::::::::::::::::
==========================================
:recibe
for /f "tokens=*" %%a in ('recibe.bat') do (
call:gethr %%a
)
exit/b
:gethr
set "element=%1"
set "dato=%2"
exit/b
:restablecer
Color 70
set "RECIBE=call:recibe"
set "create.boton=call boton.bat"
set "create.boton2=call boton2.bat"
set "create.checkbox=call checkbox.bat"
set "create.textbox=call box.bat"
if not exist objects.gui (exit/b)
for /f "tokens=*" %%a in ('type objects.gui') do (del /q /f /s "%%a">nul)
del /q /f /s "objects.gui">nul
del /q /f /s text.t>nul
echo.>"%windir%\test.check"
del /q /f "%windir%\*.check">nul
exit/b
==========================================
DESCARGA : http://www.mediafire.com/?kw1moxnihmj