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

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

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

 
 Ответить  Открыть новую тему 
> Создание меню, Очень нужна помощь !!!!
vi-rus
сообщение 1.06.2007 11:59
Сообщение #1


Новичок
*

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

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


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

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

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


Помощник капитана
****

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

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


Графический режим? Пробовала что-нибудь делать?покажи..

Сообщение отредактировано: Артемий - 1.06.2007 12:03


--------------------
Dum spiro spero!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
vi-rus
сообщение 1.06.2007 12:03
Сообщение #3


Новичок
*

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

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


А возможно ли это делать без графического режима ?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Ozzя
сообщение 1.06.2007 12:08
Сообщение #4


Гуру
*****

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

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


http://www.sources.ru/pascal/menu/index.htm
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 1.06.2007 12:53
Сообщение #5


Гость






Или здесь: http://volvo71.narod.ru/menus.htm
 К началу страницы 
+ Ответить 
vi-rus
сообщение 1.06.2007 16:19
Сообщение #6


Новичок
*

Группа: Пользователи
Сообщений: 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 килобайт ) Кол-во скачиваний: 205
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 1.06.2007 16:38
Сообщение #7


Гость






Цитата
можно ли убрать мигающий курсор ?

Курсор

Сдвинуть ближе к центру экрана можно так:
procedure povtor;
begin
clrscr;
curchoice:=1; status:=0;
textcolor(11); for temp:=1 to 4 do writeln('':15, menu[temp]);

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

А теперь - вопрос... Я тебе что, просто так дал ссылку? Я же написал на сайте, как делать НЕ надо, и ты тут же делаешь именно так, от чего я предупреждал !!! Что, пока сам не нарвешься на проблему - никого слушать не хочешь? А потом придешь, и будешь удивляться: все правильно, а вылетает dry.gif
 К началу страницы 
+ Ответить 

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

 



- Текстовая версия 28.04.2024 22:59
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"