Агрессивно пишет PHP
|
||||||||||||||||
1 | ||||||||||||||||
Съезжает текст влево при переключении экранов10.01.2025, 21:53. Показов 646. Ответов 5
Помогите мне с экраном ssd1306. Я объявил три функции отображения экранов меню (они ниже)
экран 1
экран2
экран3
Эти три фрагмента кода также содержат код для опроса кнопок (их 2, на 12 и 13) и он в конце каждого фрагмента Проблема вот в чем: При переключении экранов правой кнопкой (13) всё ок, но когда хочу налево (12 кнопка) текст начинает сильно съезжать влево. Помогите справиться с этой проблемой! Где ошибка?
0
|
10.01.2025, 21:53 | |
Ответы с готовыми решениями:
5
При переключении слайдеров в slick слайдер съезжает блок При адаптации фото съезжает влево Блок съезжает влево при уменьшении окна браузера Текст при печати съезжает |
4027 / 2573 / 430
Регистрация: 09.09.2017
Сообщений: 11,491
|
|
11.01.2025, 18:16 | 2 |
Что это за жесть? Ладно дисплей инвертируете непонятно зачем. Но рекурсивно вызывать функцию меню саму из себя! Скорее всего, вам повезло, и компилятор распознал хвостовую рекурсию. Но вообще-то так делать нельзя.
Когда исправите рекурсию, попробуйте добавить явную перерисовку по кнопке. Или, скажем, кнопку влево для 1 экрана, чтобы он перерисовал сам себя.
0
|
Агрессивно пишет PHP
|
|||||||||||
12.01.2025, 17:29 [ТС] | 3 | ||||||||||
Я вызываю функцию другого меню =)
Разве так нельзя? Добавлено через 19 минут Я сделал отрисовки другим способом. Я убрал тот бред из кода функций отрисовки меню (цикл с опросом кнопок). Теперь у меня просто в void start есть код отрисовывающий вырхнюю стргку:
Вложение 1497821 Вложение 1497822 Вложение 1497823
0
|
4027 / 2573 / 430
Регистрация: 09.09.2017
Сообщений: 11,491
|
|
12.01.2025, 18:24 | 6 |
Теоретически можно, если понимаешь что и зачем делаешь. Но если понимаешь что и зачем делаешь, именно так делать не будешь. Размер стека ограничен, соответственно нельзя бесконечно вызывать функции друг из друга. Возможно, вам повезло, и компилятор переработал ваш код из рекурсии в цикл. Но опять же, если вы не знаете как это работает, рано или поздно работать перестанет.
Да, стало получше. Опрос кнопок, конечно, все еще примитивный, но для теста сойдет. Ну что тут можно сказать. Отлаживайтесь. Если у вас код отображения 2 и 3 экрана работает нормально, а 1 нет - между ними есть какая-то разница. Скопируйте второй экран в первый постепенно приводите к исходному виду. На какой строчке сломается, там, возможно, и первая ошибка. У меня-то ваш код не запустится точно. И моими библиотеками вы вряд ли сможете воспользоваться. Ардуинщики... Вложения не открываются. Надо полагать, это реализация конечного автомата. Правда, кривая и нерабочая. Ну, пока он не запущен, можно и не сбрасывать.
0
|
12.01.2025, 18:24 | |
12.01.2025, 18:24 | |
Помогаю со студенческими работами здесь
6
При печати и при конвертации в pdf текст страниц съезжает Съезжает текст при использовании <detalis> При переключении между программами пропадает текст в RadioGroup Выпадающее меню съезжает влево Принтер epson xp-100. Съезжает текст при печати При увеличении масштаба страницы, весь текст съезжает При нажатии на кнопку заголовок и текст съезжает вниз Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Опции темы | |
|
Новые блоги и статьи | |||||
Как узнать какой процесс блокирует файл или каталог в Windows
bt_guru 23.01.2025
При работе с операционной системой Windows пользователи нередко сталкиваются с ситуацией, когда система отказывается выполнять определенные действия с файлами или каталогами, сообщая, что они. . .
|
Как в curl узнать код статуса HTTP запроса. Коды состояния HTTP
bt_guru 23.01.2025
Коды состояния HTTP играют значимую роль в обеспечении эффективного взаимодействия между клиентами и серверами. При работе с веб-сервисами важно не только отправлять запросы, но и правильно. . .
|
Как сортировать вывод команды ls в Linux
bt_guru 23.01.2025
В операционной системе Linux команда ls является одним из наиболее часто используемых инструментов для просмотра содержимого директорий. При работе с файловой системой пользователи регулярно. . .
|
Как сделать POST запрос с помощью curl
bt_guru 23.01.2025
curl - это мощный инструмент командной строки позволяет отправлять и получать данные через различные протоколы, включая HTTP, HTTPS, FTP и множество других. Особенно полезным curl становится при. . .
|
Прокрутка в tmux с помощью мыши и клавиатуры
bt_guru 23.01.2025
Tmux представляет собой мощный терминальный мультиплексор, который позволяет пользователям создавать и управлять несколькими терминальными сессиями внутри одного окна. Одной из важнейших функций tmux. . .
|
Как проверить, содержит ли массив значение в JavaScript. Поиск в массиве
bytestream 23.01.2025
Эффективный поиск значений в массивах становится критически важным навыком для разработчиков, использующих JavaScript. Процесс поиска элементов в массиве может показаться простым на первый взгляд,. . .
|
Как удалить тег Git в удалённом репозитории (remote)
bytestream 23.01.2025
Одним из важнейших механизмов организации версий в Git являются теги, которые позволяют помечать определенные точки в истории проекта как значимые. Теги часто используются для маркировки релизов,. . .
|
Чем отличаются URL, URI и URN
bytestream 23.01.2025
Системы идентификации представляют собой фундаментальный механизм, позволяющий однозначно определять местоположение и характеристики различных информационных объектов в глобальной сети. Эти системы. . .
|
Как центрировать div внутри другого div с помощью CSS. Управление расположением элементов в CSS
bytestream 23.01.2025
Позиционирование элементов играет ключевую роль в создании качественных и профессиональных интерфейсов. Одной из наиболее часто встречающихся задач является центрирование элементов на веб-странице,. . .
|
Что означают различные символы в синтаксисе PHP
bytestream 23.01.2025
PHP (Hypertext Preprocessor) представляет собой один из наиболее широко используемых языков программирования для веб-разработки, который обладает богатой и интересной историей развития. Изначально. . .
|
Способы клонирования объектов в JavaScript
bytestream 23.01.2025
В современной разработке на JavaScript работа с объектами является фундаментальной частью создания любого приложения. При манипуляции объектами часто возникает необходимость создавать их копии для. . .
|
Как проверить состояние чекбокса в jQuery. Как работать с чекбоксами
bytestream 23.01.2025
При разработке интерактивных веб-форм часто возникает необходимость программно определять состояние чекбоксов с помощью jQuery. Чекбоксы являются важными элементами пользовательского интерфейса,. . .
|