как сделать меню в паскале

Как сделать меню в паскале

procedure DrawMain (s:string); <Очищает экран, рисует строку главного меню s >
begin Window (1,1,80,25);
textcolor (txtcolor);
textbackground (textback);
clrscr; gotoxy (1,1); write (s);
end;

procedure DrawHelp (s:string); < Выводит подсказку s >
var i:integer; begin
textcolor (txtcolor);
textbackground (textback); gotoxy (1,25);
for i:=1 to 79 do write (‘ ‘);
gotoxy (1,25); write (s);
end;

procedure doubleFrame (x1,y1,x2,y2:integer; Header: string);
< Процедура рисует двойной рамкой окно >
var i,j: integer;
begin gotoxy (x1,y1);
write (‘╔’);
for i:=x1+1 to x2-1 do write(‘═’);
write (‘╗’);
for i:=y1+1 to y2-1 do begin
gotoxy (x1,i); write(‘║’);
for j:=x1+1 to x2-1 do write (‘ ‘);
write(‘║’);
end;
gotoxy (x1,y2); write(‘╚’);
for i:=x1+1 to x2-1 do write(‘═’);
write(‘╝’);
gotoxy (x1+(x2-x1+1-Length(Header))
div 2,y1);
write (Header); <Выводим заголовок>
gotoxy (x1+1,y1+1);
end;

procedure clearFrame (x1,y1,x2,y2:integer);
var i,j:integer;
begin textbackground (textback);
for i:=y1 to y2 do begin
gotoxy (x1,i);
for j:=x1 to x2 do write (‘ ‘);
end;
end;

procedure cursor (Menu,Point: integer; Action: boolean);
< Подсвечивает (если Action=true) или гасит п. Point меню Menu>
begin textcolor (Txtcolor);
if Action=true then
textbackground (cursorBack)
else textbackground (textBack);
gotoxy (x1[Menu]+1,y[Menu]+Point);
write (text[Menu][Point]);
end;

procedure DrawMenu (Menu:integer; Action: boolean);
<Рисует меню с номером Menu, если Action=true, иначе стирает >
var i:integer;
begin
if Action=true then textcolor (Txtcolor)
else textcolor (textBack);
textbackground (textBack);
doubleFrame (x1[Menu], y[Menu], x2[Menu], y[Menu]+1+KolPoints[Menu],»);
for i:=1 to KolPoints[Menu] do begin
gotoxy (x1[Menu]+1, y[Menu]+i);
writeln (text[Menu][i]);
end;
end;

procedure Work; < Рабочая процедура >
var i,kol:integer; ch:char;
begin
DrawHelp(‘Идет расчет. ‘); < Строка статуса >
textcolor (LIGHTGRAY);
textbackground (BLACK); < Выбираем цвета для работы в окне >
doubleFrame (2,2,78,24,’ Расчет ‘);
Window (3,3,77,23);

writeln;
write (‘Введите число шагов: ‘);
<$I->read (kol); <$I+>
if IoResult<>0 then writeln (‘Ошибка! Вы ввели не число’)
else if kol>0 then begin
for i:=1 to kol do
writeln (‘Выполняется шаг ‘,i);
writeln (‘Все сделано!’);
end
else writeln (‘Ошибка! Число больше 0’);
<Восстановление окна и выход>
Window (1,1,80,25);
DrawHelp(‘Нажмите любую клавишу. ‘);
ch:=readkey;
clearFrame (2,2,78,24); < Стираем окно >
end;

procedure Out; < Очистка экрана и выход>
begin
textcolor (LIGHTGRAY);
textbackground (BLACK); clrscr; halt(0);
end;

procedure Help; <Окно с информацией>
var ch:char;
begin
textcolor (Txtcolor);
textbackground (textback);
doubleFrame (24,10,56,13,’ О программе ‘);
DrawHelp (‘Нажмите клавишу. ‘);
gotoxy (25,11);
writeln(‘ Демонстрация простейшего меню’);
gotoxy (25,12);
write ( ‘ Киев, КГУ’);
ch:=readkey;
clearFrame (24,10,58,13);
end;

procedure command (Menu,Point:integer);
<Вызывает процедуры после выбора в меню >
begin
if Menu=1 then begin
if Point=1 then Work
else if Point=2 then Out;
end
else begin
if Point=1 then Help;
end;
end;

procedure MainMenu (Point,
HorMenu:integer); < Поддерживает систему одноуровневых меню >
var ch: char; funckey:boolean;
begin
Points[HorMenu]:=Point;
DrawMenu (HorMenu,true);
repeat
cursor (HorMenu,Points[HorMenu],true);
ch:=readkey;
cursor (HorMenu,Points[HorMenu],false);
if ch=#0 then begin
funckey:=true; ch:=readkey;
end
else funckey:=false;
if funckey=true then begin
ch:=Upcase (ch);
if ch=#75 then begin < Стрелка влево >
DrawMenu (HorMenu,false);
HorMenu:=HorMenu-1;
if (HorMenu maxMenu) then HorMenu:=1;
DrawMenu (HorMenu,true);
end
else if ch=#72 then begin
< Стрелка вверх >
Points[HorMenu]:=Points[HorMenu]-1;
if Points[HorMenu] KolPoints[HorMenu])
then Points[HorMenu]:=1;
end;
end
else if ch=#13 then begin
< Клавиша ENTER >
DrawMenu (HorMenu,false);
command (HorMenu,Points[HorMenu]);
DrawMenu (HorMenu,true);
DrawHelp (MainHelp);
end;
until (ch=#27) and (funckey=false);
< Пока не нажата клавиша ESC >
end;

begin
Init;
MainMenu (1,1);
Out;
end.

Источник

Создать горизонтальное меню

Добавить горизонтальное меню в приложение
товарищи мне срочно нужна помощь! у меня есть прога с буквенным вертикальным выпадающим подменю.

Горизонтальное меню на паскале. сделать кнопки из 4 пунктов
Мне надо в готовое меню добавить 4 пункта 1) Ввод массива 2) Вывод массива 3) Обработка.

как сделать меню в паскале. Смотреть фото как сделать меню в паскале. Смотреть картинку как сделать меню в паскале. Картинка про как сделать меню в паскале. Фото как сделать меню в паскалеГоризонтальное меню через процедуры и функции модулей CRT и DOS
Доброго времени суток, друзья. Помогите пожалуйста с выполнением лабораторной работы. Разработать.

Сформировать на экране горизонтальное меню при помощи процедур и функций модулей CRT и DOS
Разработать алгоритм и программу решения задачи, в которой необходимо сформировать на экране.

Решение

как сделать меню в паскале. Смотреть фото как сделать меню в паскале. Смотреть картинку как сделать меню в паскале. Картинка про как сделать меню в паскале. Фото как сделать меню в паскалеНеобходимо сформировать на экране горизонтальное меню с использованием процедур и функций модулей CRT и DOS
Необходимо сформировать на экране горизонтальное меню при помощи процедур и функций модулей CRT и.

как сделать меню в паскале. Смотреть фото как сделать меню в паскале. Смотреть картинку как сделать меню в паскале. Картинка про как сделать меню в паскале. Фото как сделать меню в паскалеГоризонтальное меню с выпадающим меню
помогите сделать горизонтальное меню с выпадающим меню. Нужно чтобы при выборе какого нибудь пункта.

как сделать меню в паскале. Смотреть фото как сделать меню в паскале. Смотреть картинку как сделать меню в паскале. Картинка про как сделать меню в паскале. Фото как сделать меню в паскалеРеализовать горизонтальное меню
Ребят, у меня такая проблема, что почему-то не реализуется переход между объектами меню, я ее еще.

Изменить вертикальное меню на горизонтальное
Program nm; Uses CRT; Var spisok: array of string; kod, kod1: char; n, i, p: byte; Procedure.

как сделать меню в паскале. Смотреть фото как сделать меню в паскале. Смотреть картинку как сделать меню в паскале. Картинка про как сделать меню в паскале. Фото как сделать меню в паскалеГоризонтальное меню в графическом режиме
Помогите пожалуйста с задачей! помогите с задачей) Решить задачу с помощью рекурсии. Составить.

Модуль CRT. Вывести на экран простейшее горизонтальное меню
Необходимо вывести на экран простейшее горизонтальное меню, в котором выбранный пункт меню должен.

Источник

Как сделать меню в паскале

Определим задачу: организовать меню, с возможностью выбора одного из пунктов с помощью курсорных клавиш. Положение самого меню, и его внешний вид (горизонтальное или вертикальное), определяется в программе.

Программа будет состоять из функции MainMenu и основного кода, обрабатывающего результат выбора.

Чем должна делать функция MainMenu?

Так, как необходимо хранить в памяти названия пунтов меню и их расположение на экране, то обыкновенным массивом не обойтись, нужно определить свой тип данных для такого массива.

Теперь можно определить переменную Menu, как массив типа TMenu, и задать его:

Для рисования самого меню, без выбранных пунктов определим процедуру DrawMenu:

Так как выбранный пункт должен явно отличаться от всех остальных пунктов меню, будем делать его инверсным. То есть цвет фона и цвет тона нужно поменять местами. Для этого из переменной TextAttr выделяем нужные цвета TC и TB для раскраски выбранного пункта.

Попробуем нарисовать выбранный пункт меню, используя отдельную процедуру:

Процедура обратного выбора DeSelect, или сокрытия выбранного пункта меню полный аналог Select:

Основной этап подготовки функции завершен. Нужно подготовиться к выводу на экран и обработки клавиатуры.

Напишем обработчик клавиатуры. Кроме тупого перебора пунктов меню, предоставим пользователю возможность выбрать пункт клавишей Enter и выйти из меню клавишей Esc.

Курсорные клавиши возвращают расширенный код. По этому при обнаружении #0 используем вложенный Case. #72 и #80 коды клавиш вверх и вниз.

Для того, чтобы сдвинуться в указанном направлении, надо спрятать выбранный ранее пункт меню, изменить переменную Sel так, чтобы она указывала на новый пункт и не выходила за пределы меню. Показать новый пункт.

Чтобы вертикальное меню превратить в горизонтальное, надо изменить координаты в массиве Menu и коды клавиш #72 и #80.

Теперь легко описать действия в зависимости от выбранного пункта в основной программе:

Источник

Как сделать меню в паскале

1. Ошибки при организации меню

Ну, а теперь, приступим все-таки к построению меню, лишенного этих недостатков. Программы подробно прокомментированы, так что разобраться, как именно они работают, я думаю, труда не составит.

2. Меню в текстовом режиме

За основу можно взять вот такой пример: (С) Совместная разработка Volvo877 и Romtek (forum.sources.ru)

3. Меню в графическом режиме

Эта программа немного более сложна, чем приведенная выше.

Само меню было выдрано из моей старой программы и немного доработано, поэтому его пункты именно такие. (С) volvo877 (Форум «Интересные задачи для программистов»).

Пример организации меню из файлов

Задача:
Недавно на одном из форумов встретился вот такой вопрос:

«Здравствуйте.
У меня такой вопрос. Есть меню из 3-х пунктов. Если нажимается первый пункт, то должно появиться следующее меню, где также можно выбирать пункты второго меню. Содержимое второго меню хранится в файле. То есть при нажатии на первый пункт главного меню я вывожу пункты второго меню из файла. Как сделать, чтобы из этих (выведенных из файла) пунктов также можно было выбирать. или это невозможно?
Спасибо заранее за помощь.»

Эта задача показалась мне достаточно интересной, чтобы привести ее решение. Итак.

В таком случае нам достаточно хранить в файлах-«описателях меню» данные в таком вот формате:
Для того, чтобы реализовать чтение меню из файла и его запуск, понадобится следующая функция: Ну, и для полноты картины не хватает только реализации ShowMenu, в которой и будет происходить запуск процедуры для каждого пункта меню. Я бы реализовал ее так: Полностью исходник (вместе с примером TXT-файлов с описанными в них меню) находится в архиве:
f_menu.rar

Источник

как сделать меню выбора?

Как сделать графическое меню?
как в паскале сделать графическое меню?

использовать оператор выбора case of при разработке меню
Создать файл, содержащий следующую информацию в каждой записи: ФИО, оценка1, оценка2, оценка3.

Меню выбора цвета
Нашёл программу на С++ (исходник рабочий), С++ я не знаю. https://yadi.sk/d/LMbvXOKGrrYbZ Хочу.

Как сделать кнопку меню в Windows Forms?
Как сделать кнопку,с помощью которой,например,открывается меню выбора файлов и т.п. Прошу.

DGR, как сделать меню в паскале. Смотреть фото как сделать меню в паскале. Смотреть картинку как сделать меню в паскале. Картинка про как сделать меню в паскале. Фото как сделать меню в паскалезачем мне код Вашего меню? Вам дали пример если Вы не можете его реализовать в своей программе то выложите программу в которую нужно вписать это меню.

P.S. Вы там что программу для Пентагона пишите что такая сверхсикретность? как сделать меню в паскале. Смотреть фото как сделать меню в паскале. Смотреть картинку как сделать меню в паскале. Картинка про как сделать меню в паскале. Фото как сделать меню в паскале

Меню: работа с очередью с возможностью выбора формы физического представления
Здравствуйте! Задание следующее : Разработать демонстрационную программу работы с очередью с.

как сделать меню в паскале. Смотреть фото как сделать меню в паскале. Смотреть картинку как сделать меню в паскале. Картинка про как сделать меню в паскале. Фото как сделать меню в паскалеПостроить систему меню, которая в зависимости от выбора пользователя выводин на экран разные фигуры
.Построить систему меню, которая в зависимости от выбора пользователя выводит на экран: эллипс.

как сделать меню в паскале. Смотреть фото как сделать меню в паскале. Смотреть картинку как сделать меню в паскале. Картинка про как сделать меню в паскале. Фото как сделать меню в паскалеКак сделать меню в меню?
Хочу сделать программку, калькулятор и вычисление корней в квадратном уравнении.. Есть две.

как сделать меню в паскале. Смотреть фото как сделать меню в паскале. Смотреть картинку как сделать меню в паскале. Картинка про как сделать меню в паскале. Фото как сделать меню в паскалеКак сделать меню?
Как организовать на экране внешнее меню, позволяющее выбрать нужную задачу из пяти имеющих и.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *