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

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

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

> Меню, Создание меню
qwerty
сообщение 3.12.2004 20:20
Сообщение #1


Новичок
*

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

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


Народ!!! Тут такое вот заданьеце! Разработать программу на TP, которое реализует многоуровневое меню приложения.
Требования:
Строка меню в верхней части экрана (окна);
Активизация меню по клавише Ф10;
Перемещение по опциям (ограничить перемещение за пределы меню)
- для горизонтального - стрелки ВЛЕВО, ВПРАВО
- для вертикального - стрелки ВВЕРХ, ВНИЗ
Выбор - клавиша <Enter> , <Space>
После выбора какого-либо пункта меню на экране вывести сообщение о том, какая опция меню выбрана.

НАРОД !!!!!!! PLZ помогите !!!! Во вторник уже надо сдавать! Я начал ее делать, но не все получается! Если вам не очень затруднит, помогите! Заранее спасибо)))

Сообщение отредактировано: qwerty - 3.12.2004 22:43
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Jahnerus
сообщение 5.12.2004 3:57
Сообщение #2


Уникальный
**

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

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


Таймер цифровой :
Код
uses
 crt;
var
 st,tmp:string;
 ch:char;
 m,s:word;
 er:integer;
 b:boolean;

procedure add_int(var st:string; i:integer);
var
 tmp_st:string;
begin
 str(i,tmp_st);
 if i<10 then insert('0',tmp_st,1);
 st:=st+tmp_st;
end;

begin
 clrscr;
 writeln('Vvedite interval vremeni (59:59)');
 readln(st);
 val((st[1]+st[2]),m,er);
 val((st[4]+st[5]),s,er);
 clrscr;
 writeln(st);
 b:=false;
 repeat
   if b then begin
     delay(1000);
     st:='';
     if s=0 then begin
       if m<>0 then begin
         s:=60;
         m:=m-1;
       end
       else begin
         b:=false;
         writeln(^g);
       end;
     end;
     if b then begin
       s:=s-1;
       add_int(st,m);
       st:=st+':';
       add_int(st,s);
       gotoxy(1,1);
       write(st);
     end;
   end;
   if keypressed then begin
     ch:=readkey;
     if ch<>#0 then begin
       case ord(ch) of
       13: b:=true;
       32: b:=not(b);
       27: break;
       end;
     end
     else begin
       ch:=readkey;
       if ord(ch)=59 then begin
         clrscr;
         writeln('About:');
         writeln('Taymer. ver 1.01');
         writeln('This program was developed by Jahnerus');{Ne zabud6 eto ubrat6}
         writeln('Help:');
         writeln('Interval vremeni vvoditsya v formate mm:ss (mm-minutes, ss-seconds)');
         writeln('Upravlenie taymerom:');
         writeln('Enter ............ Start');
         writeln('Space ... Pause/Continue');
         writeln('Esc ............... Exit');
         writeln('F1 ................ Help');
         writeln('F2 .... Adjustment/Input');
         writeln('Najmite "Esc" dlya vozvrata');
         repeat
         until (keypressed) and (ord(readkey)=27);
         clrscr;
         if (m=0) and (s=0) then writeln('00:00')
         else writeln(st);
       end;
       if ord(ch)=60 then begin
         clrscr;
         writeln('Vvedite interval vremeni (59:59)');
         readln(st);
         val((st[1]+st[2]),m,er);
         val((st[4]+st[5]),s,er);
         b:=false;
         clrscr;
         writeln(st);
       end;    
     end;
   end;
 until false;
end.

Как и обещал! Таймер! работает без глюков если компилить на FPC(Free Pascal Compiler), а через TPC(Turbo Pascal Compiler) будут глюки по уже известным причинам: Delay и длительная проверка на KeyPressed!(ну чё уж поделаешь не писать же на asm'е)

Сообщение отредактировано: Jahnerus - 5.12.2004 13:17


--------------------
Век живи, век учи С © by Jahnerus
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
qwerty   Меню   3.12.2004 20:20
Jahnerus   Кажется эта тема уже поднималась ... и причём неда...   3.12.2004 20:23
volvo   qwerty Попробуй использовать библиотеку Turbo Vis...   3.12.2004 20:26
GoodWind   имя пользователя и просьба выслать на мыло наталки...   3.12.2004 20:28
qwerty   Тебе чем-то не нравится мой ник??? А что-нибудь...   3.12.2004 22:49
volvo   qwerty Так закинь куда-нибудь свой проект, чтобы ...   3.12.2004 22:51
qwerty   Проекта у меня нет! Его я не доделал и удалил...   3.12.2004 23:51
volvo   qwerty На такое (без указателей) я уже не способе...   3.12.2004 23:53
qwerty   А что так??? Там как-то отрисовывать надо по ходу(...   3.12.2004 23:55
qwerty   volvo, помоги plz - оч надо =\\   3.12.2004 23:57
qwerty   Пример меню: Файл----------Настройки-------------...   4.12.2004 0:06
volvo   Так ты делай, а если что не понятно - я постараюсь...   4.12.2004 0:07
qwerty   Мне еще 2 другие делать - калькулятор и часы - я п...   4.12.2004 0:17
Jahnerus   qwerty Калькулятор говоришь ... он же пишется макс...   4.12.2004 16:31
qwerty   Jahnerus , помоги плз Таймер цифровой : Ввод инте...   4.12.2004 20:08
Jahnerus   И второе задание: цифровые часы в виде ХХ:ХХ:ХХ us...   4.12.2004 23:49
Jahnerus   Таймер цифровой : uses  crt; var  st,tmp:str...   5.12.2004 3:57
qwerty   Jahnerus Сэньк ю вери мач! РОДИНА этогго не з...   5.12.2004 20:48


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

 



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