Con MenuCreator pueden crear un menu desde un simple Call...
Parametros:
Call:Menu
|_1_ Items separados por Puntos ( ejemplo.de.items. )
|_2_ Espacio entre borde Isq y menu ( " " )
|_3_ Icono de NO seleccionado ( "[-]" )
|_4_ Icono de SI seleccionado ( "[+]" )
|_5_ Variable que contenga una cabezera para el menu, sin %% (Cabezera)
|_6_ Variable donde se almacenara el item seleccionado
[i]Call:Menu "ejemplo.de.items" " " "[-]" "[+]" Cabezera Resultado[/i]
( Lo pongo entre (Code)(/Code) porque sino se deforma... )
Ejemplos:
Codigo:
:MenuCreator
SetLocal EnableDelayedExpansion
If NOT exist "keyboard.exe" (Call:..kybrd Echo)
Set ..p6=%6
Set ..c=0
set ..p1=%~1
set ..p1=%..p1:.=,%
For %%_ in (%..p1%) Do (Set /A ..c+=1&Set ..itm!..c!=%%_)
Set ..s=1
:..MnGn
CLS&Echo.&!%5!&Echo.
For /L %%_ in (1,1,!..c!) Do (
If ["%%_"]==["!..s!"] (Echo%~2%~4 !..itm%%_!) Else (Echo%~2%~3 !..itm%%_!)
)
keyboard
If ["%ErrorLevel%"]==["72"] (IF not ["!..s!"]==["1"] (Set /A ..s-=1))
If ["%ErrorLevel%"]==["80"] (IF not ["!..s!"]==["!..c!"] (Set /A ..s+=1))
If ["%ErrorLevel%"]==["13"] (Set %..p6%=!..itm%..s%!&CLS&GOTO:EOF)
GoTo:..MnGn
:..kybrd
(%1 n keyboard.dat
%1 e 0000 4D 5A 2E 00 01 00 00 00 02 00 00 10 FF FF F0 FF
%1 e 0010 FE FF 00 00 00 01 F0 FF 1C 00 00 00 00 00 00 00
%1 e 0020 B4 08 CD 21 3C 00 75 02 CD 21 B4 4C CD 21
%1 rcx&%1 002E&%1 w0&%1 q&%1.)>keyboard.dat
type keyboard.dat|debug>NUL 2>&1
del /f/q/a "keyboard.exe">NUL 2>&1
rename "keyboard.dat" "keyboard.exe"
GoTo:EOF
(http://i44.tinypic.com/2n8wnxg.gif)
Set Cabezera=Echo \_/\ [ MenuByPony ] /\_/
Call:Menu "Menu.By.Pony.Magic" " " "[-]" " [+]" Cabezera resultado
Echo.
Echo %resultado%
Pause
(http://i43.tinypic.com/1zp5mds.gif)
Set Cabezera=Echo -:01010011.. P0NYM4GIK ..11001010:-
Call:Menu "Menu.By.Pony.Magic" " " "o" " o" Cabezera resultado
Echo.
Echo %resultado%
Pause
INteresante codigo.....veo que ha sido de gran utilidad el Keyboard.exe ;D
Te faltó:
setlocal enabledelayedexpansion
Saludos.
Cita de: :: SmartGenius :: en 28 Mayo 2009, 06:32 AM
INteresante codigo.....veo que ha sido de gran utilidad el Keyboard.exe ;D
si si, es "mas mejor" que el choice :P
Cita de: Leo Gutierrez. en 28 Mayo 2009, 17:49 PM
Te faltó:
setlocal enabledelayedexpansion
Saludos.
sisi tal cual, ahora lo agrego, cuando lo hacia lo tenia arriba de la etiqueta... :xD
y tambien agrego los parametros del Call, por si alguno no queda claro... :rolleyes:
a mi no me interesa si tenes sueño o cualkier otro motivo
a mi me pones la explicacion bien detallada.. tendiste ?
jajajajja
voy a mirarlo cuando llegue a casa.. y es mas. .te lo voy a robar jajajaja
joda bldo :P
buen codigo.. no me habias contado nada u.u
saludos
Cita de: Darioxhcx en 29 Mayo 2009, 00:39 AM
a mi no me interesa si tenes sueño o cualkier otro motivo
a mi me pones la explicacion bien detallada.. tendiste ?
jajajajja
voy a mirarlo cuando llegue a casa.. y es mas. .te lo voy a robar jajajaja
joda bldo :P
buen codigo.. no me habias contado nada u.u
saludos
lo hice en 10min no es algo pá andar contando :P
ahi te admi... me conect... ahi te hablo por msn... ;D