- 22, Oct 2024
- #1
Напишите программу, которая создает состояние с двумя состояниями. флажок с которыми люди могут взаимодействовать с помощью мыши.
В частности, ваша программа должна обеспечивать все следующее:
Создайте область экрана размером 8×8 пикселей (или больше, если хотите), которая является кликабельной областью флажка. В дальнейшем эта область называется просто флажком.
Когда курсор мыши перемещается внутри флажка и нажимается кнопка мыши по умолчанию*, флажок должен переключать состояния.
Отмеченный становится неотмеченным. Неотмеченное становится отмеченным.Флажок не должен перемещаться при переключении.
В отмеченном состоянии флажок может быть любого цвета.
В неотмеченном состоянии чекбокс может быть любого цвета если хотя бы 16 пикселей визуально отличаются от проверенного состояния.
В одном экземпляре программы все отмеченные состояния должны быть визуально идентичны друг другу, а все непроверенные состояния должны быть визуально идентичны друг другу.
Не завершайте программу до тех пор, пока она не будет явно завершена (например, с помощью кнопки выхода или Alt+F4), чтобы пользователь мог щелкать флажок столько, сколько пожелает.
*Вы можете предположить, что кнопкой мыши по умолчанию всегда является щелчок левой кнопкой мыши, но также можно использовать кнопку по умолчанию, определенную программным обеспечением мыши или ОС, которая на самом деле может не вызывать щелчок левой кнопкой мыши в зависимости от пользователя.
Примечания
Не имеет значения, что находится за пределами региона вашего флажка. Это может быть просто рабочий стол. Это может быть часть консоли, которая меняется при каждом переключении.
Не имеет значения, в каком состоянии начинается ваш флажок.
Область флажка может иметь любые размеры 8×8 пикселей или выше. Он не обязательно должен быть квадратным.
Вы можете сделать небольшие поправки для параметров, которые находятся вне вашего контроля, таких как размер шрифта консоли, масштабирование браузера, разрешение монитора и т. д. Пока ваша программа работает в разумных тестовых настройках, она должна быть допустимой.
Если ваша программа открывает окно, вы можете предположить, что оно было перетащено в подходящее место на экране, если это необходимо (например, в верхний левый угол).
Вы можете использовать языки разметки, такие как HTML или другие языки. мы обычно не рассматриваем как полноценные языки программирования.
Ваш флажок должен можно переключать с помощью кнопки мыши по умолчанию. Ничего страшного, если он также переключается на другие формы ввода (например, правую кнопку мыши), за исключением движения мыши. то есть состояние не должно меняться, если мышь просто перемещается внутри флажка.
Настоятельно приветствуются скриншоты вашего флажка в действии!
Подсчет очков
Выигрывает самый короткий код в байтах.
Пример
Канонический пример HTML размером 23 байта.
<input type="checkbox">
Для меня в Google Chrome это создает флажок размером 12 × 12 пикселей, и около 30 пикселей четко меняются между отмеченным и неотмеченным состояниями.
Я делаю поправку, что масштаб браузера составляет 100%.
#код-гольф #интерактив