IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Создание меню, Очень нужна помощь !!!!
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 23
Пол: Мужской

Репутация: -  0  +


Люди, очень нужна ваша помощь.

Нужно сделать меню. Допустим выглядит так : 1. Факториал
2. Сумма чисел
3. Сумма ряда

Нужно сделать так : при нажатии клавиши вниз( вверх) выделяется нижний( верхний ) элемент меню. Затем при нажатии клавиши Enter запускается соответствующая программа, которая запускает нужный модуль, и затем выполняется сама программа.
Как сделать модуль, я разобрался. Подскажите, как сделать меню ?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 23
Пол: Мужской

Репутация: -  0  +


Вот вроде бы сделал :

uses crt,modul;
const
menu :array[1..4] of string=(
' Посчитать факториал нечетных чисел от 1 до 9 ',
' Перевод из р-ичной системы счисления в десятичную ',
' Задача на множество из букв ',
' Выход ');
var
curchoice :byte;
status :byte;
temp :byte;
ch :char;

procedure z3;
begin
slova;
writeln('Нажмите Enter...');
end;

procedure z1;
begin
clrscr;
fak;
writeln('Ответ : ', fak);
writeln('Нажмите Enter...');
readln;
end;

procedure z2;
var n:string;
syst:longint;
begin
clrscr;
writeln('Выберите систему :');
readln(syst);
writeln('В ',syst,'-ичной системе можно использовать только цифры от 0 до ',syst-1,' !' );
writeln('В противном случае результат будет неверным!');
writeln('Число :');
readln(n);
todecr(n,syst);
textcolor(12);
writeln;
writeln('Ответ : ',todecr(n,syst));
textcolor(15);
writeln('Нажмите Enter...');
readln;
end;

procedure povtor;
begin
clrscr;
curchoice:=1; status:=0;
textcolor(11); for temp:=1 to 4 do writeln(menu[temp]);
repeat
gotoxy(1,curchoice); textcolor(15); textbackground(13); write(menu[curchoice]);
textbackground(0);
if keypressed then

case readkey of
#72: if curchoice>1 then begin
textcolor(11); textbackground(0); gotoxy(1,curchoice);
write(menu[curchoice]); dec(curchoice);
end;
#80: if curchoice<4 then begin
textcolor(11); textbackground(0); gotoxy(1,curchoice);
write(menu[curchoice]); inc(curchoice);
end;
#27: status:=4;
#13: begin
status:=curchoice;
if status = 1 then begin z1; povtor; end;
if status = 2 then begin z2; povtor; end;
if status = 3 then begin z3; povtor; end;
end
end;

until status=4;

end;



begin
povtor;
textcolor(13); textbackground(0);
end.



Подскажите, как сместить меню в центр экрана, что-то не получается. И можно ли убрать мигающий курсор ?


Прикрепленные файлы
Прикрепленный файл  help.rar ( 2.62 килобайт ) Кол-во скачиваний: 177
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 27.04.2024 2:22
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name