|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.11.2016, 18:01 | #1 |
Регистрация: 16.03.2016
Сообщений: 6
|
Графическое меню pascal
Здравствуйте!
У меня получается простое меню для выбора надо написать номер варианта действия и нажать ввод. Подскажите, как меню сделать с подсветкой выбора и управления клавишами клавиатура. То есть по меню управляешь клавишами и выбор действия enter. Код:
|
26.11.2016, 22:06 | #2 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,304
|
Так понимаю, что это Pascal ABC.
И все же. 1. Использовать следующие процедуры: - сохранить текущие параметры цвета фона и символов; - ввести новые параметры цвета фона и символов; - выполнять переход между строками меню, используя процедуру GOTOXY 2. Вывод меню: - инициировать указатель позиции Следующий алгоритм оформить процедурой (параметр - указатель позиции строки меню: В цикле по строкам меню - Перейти к месту (строка, позиция на строке) вывода первой строки; - Если указатель позиции равен текущей позиции Сохранить цвет фона и символов, установить цвет фона и символов для выделения, Вывести строку, Восстановить цвет фона и символов Иначе вывести строку; Конец цикла. 3. Ловим нажатие, например стрелки и меняем указатель позиции строки. Проверяем и корректируем. Значение указателя должно находиться в диапазоне 1 ..m, где m - число строк меню. Корректируем в соответствии с принятым решением. Например, если указатель меньше 1 или больше m, то он восстанавливается: ukaz := 1 или ukaz := m. В другом случае, зацикливание: ukaz := m или ukaz := 1. Вызываем процедуру вывода меню. Внимание: Текущие параметры цвета фона и символов можно передавать в процедуру через параметр или через глобальную переменную. Можно усложнить процедуру и получать необходимые параметры цвета фона и символов в ней, зная уже подсвеченную позицию меню. PS: Возможно, что для вывода текста придется воспользоваться другой процедурой. Если переставлять строки меню, то следует учесть, что они разной длинны и необходимо выравнивать выводимые строки по длине, добавляя пробелы, или выводить строку пробелов заданной длинны, с тем, что бы не оставлять символы и фон другого цвета. Как-то так, ...
Как-то так, ...
|
27.11.2016, 08:34 | #4 |
Регистрация: 16.03.2016
Сообщений: 6
|
Serge_Bliznykov, = Спасибо! Ваш совет мог и все получилось.
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Графическое меню С++ | dykee | Помощь студентам | 0 | 02.05.2014 22:49 |
Графическое меню с мышью Turbo Pascal | GamBitFRK | Паскаль, Turbo Pascal, PascalABC.NET | 10 | 16.01.2013 15:06 |
Графическое меню в Pascal'е. | Astrador | Помощь студентам | 0 | 01.06.2012 14:00 |
Графическое меню | Andrey770 | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 31.10.2011 20:51 |