ZEman, я же, тремя сообщениями выше накидал рабочий вариант. Чем не нравится?![]()
ZEman, я же, тремя сообщениями выше накидал рабочий вариант. Чем не нравится?![]()
Когда есть, но не знаешь где - это все равно, что нету.
ZEman(22.06.2021)
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
null_device, вариант неплохой.
но, Я стремлюсь к тому чтобы выжать из программы как можно больше свободной памяти, сохранив при этом все имеющеюся фишки программы.
то-есть ничего не удаляется, весь функционал остаётся тем-же, но при этом получаешь больше памяти.
Через INKEY$ самое нормальное.
А если INPUT A$, то выводятся поганые кавычки еще, раздражали в своё время.
В ZX Like Pascal, кстати, я решил эту проблему кардинально во встроенной процедуре обработки ошибок. Если для числовой переменной A юзер вводит в readln(A) не число или число больше, чем поддерживает тип, то его введенная строка стирается и запрашивается заново.
Andrew771(27.06.2021)
Andrew771(27.06.2021)
Rararura 1.9.5
новая версия программы.
изменений не так много, в основном я занимался оптимизацией программы и старался получить в ней как-можно больше свободной памяти.
также исправил пару серьёзных ошибок программы и сделал её намного быстрей.
список изменений:
- исправлена ошибка с установкой символа в нижнем правом углу, в текстовом редакторе.
- исправлена ошибка с загрузкой нового шрифта при выборе символов для Multiselect mode.
- исправлена ошибка с выбором главного символа.
- удалён режим отладки для поворота символов.
- большая оптимизация программы.
- небольшой прирост скорости в работе программы.
- получено почти 7 кб свободной памяти.
через пару - тройку месяцев выпущу ещё одну, скорее всего последнюю версию данной программы, в которой я добавлю много интересного.
Последний раз редактировалось ZEman; 24.06.2021 в 17:55.
прошу помощи ибо никак не выходит.
есть програмка - текстовый редактор (листинг и снапшот прилагается).
и всё бы хорошо, всё прекрасно работает.
но есть маленький недочёт который меня просто бесит.
курсор перемещается с помощью клавиш стрелок и любая другая клавиша ставит символ на экране.
если перемещая курсор по экрану, зажать одну клавишу например стрелку влево - курсор бежит влево.
если теперь не отпуская клавиши нажать другую клавишу стрелку то на экран будет выводиться одна из цифр (5 6 7 или 8).
как это можно обойти ?
как сбросить байт отвечающий за зажатую клавишу SHIFT чтоб понималось только значение нажатой стрелки ?
ZEman, если все это происходит на реале, это какая-то особенность именно вашего "железа". Реализация узла контроллера клавиатуры, или непосредственно пленок в ней. Т.к. при опросе через функцию INKEY$, при одновременном нажатии двух клавиш "базовой матрицы", она возвращает "пустой" аргумент (значение "ноль").
Когда есть, но не знаешь где - это все равно, что нету.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)