Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Просили вроде меню выбора на batch. Нашел только с подключением PS . Зацените?

V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (258862), на голосовании 5 дней назад
 @echo off 
setlocal enabledelayedexpansion

rem Определение пунктов меню
set "option0=Option 1"
set "option1=Option 2"
set "option2=Option 3"
set "option3=Exit"

set "current=0"

:menu
cls
echo Use Arrow keys to navigate and Enter to select:

rem Вывод пунктов меню
for /l %%i in (0,1,3) do (
if %%i equ %current% (
echo ^> !option%%i!
) else (
echo !option%%i!
)
)

rem Вызов PowerShell для чтения нажатия клавиши
for /f "delims=" %%K in ('powershell -noprofile -command "$Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown').VirtualKeyCode"') do set "key=%%K"

if %key%==38 (
set /a current-=1
if %current% lss 0 set current=3
)
if %key%==40 (
set /a current+=1
if %current% gtr 3 set current=0
)
if %key%==13 (
goto select
)

goto menu

:select
cls
echo Your choice:
if %current% equ 0 (
echo Option 1
) else if %current% equ 1 (
echo Option 2
) else if %current% equ 2 (
echo Option 3
) else if %current% equ 3 (
echo Exiting...
pause
exit
)

pause
goto menu
Голосование за лучший ответ
Алекс Куха Высший разум (456402) 1 месяц назад
Стрелочки бойко бегают. Функционально вроде без изъянов. Что сказал заказчик?
Похожие вопросы