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

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

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

 
 Ответить  Открыть новую тему 
> графическое меню, создать графическое меню
сообщение
Сообщение #1





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

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


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



program biblioteka;
uses crt;
const n=100;
label menu;
type knigi=record
janr:string[12];
avtor:string[20];
nazvanie:string[30];
izdatelstvo:string[15];
god_izdaniya:word;
end;
var
zap:knigi;
z1,z:array[1..n] of knigi;
jan:string[12];
av:string[20];
m,l,l1:integer;
s:real;
procedure vvod(var a:array of knigi; var l:integer);
var i:integer;
ff:file of knigi;
begin
Assign(ff,'C:\tp7\bin\knigi.dat');
reset(ff);
i:=1;
while not eof (ff) do
begin
read(ff,a[i]);
i:=i+1;
end;
l:=i-1;
close(ff);
end;
procedure vvod_KL(var a:knigi);
var
ff:file of knigi;
begin
writeln('введите жанр');
readln(a.janr);
writeln('введите автора*');
readln(a.avtor);
writeln('введите название');
readln(a.Nazvanie);
writeln('введите издательство');
readln(a.izdatelstvo);
writeln('введите год издания');
readln(a.god_izdaniya);

Assign(ff, 'C:\tp7\bin\knigi.dat');
Rewrite(ff);
write(ff,a);
close(ff);
end;
procedure Vivod(var zap:knigi);
var
k:knigi;
f:file of knigi;
i:integer;
begin
vvod(z,l);
l:=l+1;
z[l]:=zap;
Assign(f, 'C:\tp7\bin\knigi.dat');
rewrite(f);
for i:=1 to l do
write(f,z[i]);
Close(f);
end;

procedure Vvod_fl(var zap:knigi);
var
name:string;
k:knigi;
f:text;
ff:file of knigi;
i:integer;
begin
gotoxy(15,23);
write('введите имя файла: ');
readln(name);
writeln;
Assign(f,name );
Vvod(z,l);
Assign(ff,'C:\tp7\bin\knigi.dat');
Rewrite(ff);
Reset(f);
for i:=1 to l do
write(ff,z[i]);
while not Eof(f) do
begin
Read(f,zap.janr);
write(zap.janr);
Read(f,zap.avtor);
write(zap.avtor);
Read(f,zap.nazvanie);
write(zap.nazvanie);
Read(f,zap.izdatelstvo);
write(zap.izdatelstvo);
Readln(f,zap.god_izdaniya);
write(zap.god_izdaniya);
writeln;
write(ff,zap);
end;
Close(f);
Close(ff);
end;

procedure vivod_sp(var a:array of knigi; k:integer);
var i:integer;
begin
for i:=1 to k do
begin
write(a[i].janr);
write('*',a[i].avtor);
write(a[i].nazvanie);
write(a[i].izdatelstvo,' ');
write(a[i].god_izdaniya);
writeln;
end;
end;

procedure janr;
var j,i:integer;
m:string[12];
begin
write('какой жанр вы желаете увидеть? ');
readln(m);
vvod(z,l);
for j:=1 to l do
for i:=1 to l-j do
begin
if z[i].avtor>z[i+1].avtor then
begin
zap:=z[i];
z[i]:=z[i+1];
z[i+1]:=zap;
end;
end;
l1:=0;
for i:=1 to l do
if z[i].janr=m then
begin
l1:=l1+1;
z1[l1]:=z[i];
end;

j:=0;
av:=z1[1].avtor;
for i:=1 to l1 do
begin
if z1[i].avtor=av then
begin
j:=j+1;
end
else
begin
writeln(' Количество книг = ',j);
j:=1;
av:=z1[i].avtor;
end;
{write(z[i].janr); }
write(j,'. ');
write(z1[i].avtor);
write(z1[i].nazvanie);
write(z1[i].izdatelstvo,' ');
write(z1[i].god_izdaniya);
writeln;
end;
writeln(' Количество книг = ',j);
end;

pocedure avtor;
var i:integer;
s,ss:string[20];
begin
write('Какого автора вы желаете увидеть? ');
readln(s);
vvod(z,l);
for i:=1 to l do
begin
ss:=z[i].avtor;
if s=ss then
begin
write(z[i].janr);
write(z[i].avtor);
write(z[i].nazvanie);
write(z[i].izdatelstvo,' ');
write(z[i].god_izdaniya);
writeln;
end;
end;end;

procedure nazvanie;
var i:integer;
m:string[30];
begin
write('Какое название книги желаете увидеть? ');
readln(m);
vvod(z,l);
for i:=1 to l do
begin
if z[i].nazvanie=m then
begin
write(z[i].janr);
write(z[i].avtor);
write(z[i].nazvanie);
write(z[i].izdatelstvo,' ');
write(z[i].god_izdaniya);
writeln;
end;
end;end;

procedure izdatelstvo;
var i:integer;
m:string[15];
begin
write('Какое издательство хотите увидеть? ');
read(m);
vvod(z,l);
for i:=1 to l do
begin
if z[i].izdatelstvo=m then;
begin
write(z[i].janr);
write(z[i].avtor);
write(z[i].nazvanie);
write(z[i].izdatelstvo,' ');
write(z[i].god_izdaniya);
writeln;
end;
end;end;

procedure god_izdaniya;
var i:integer;
m:word;
begin
write('Какой год издания желаете увидеть');
read(m);
vvod(z,l);
for i:=1 to l do
begin
if z[i].god_izdaniya=m then
begin
write(z[i].janr);
write(z[i].avtor);
write(z[i].nazvanie);
write(z[i].izdatelstvo,' ');
write(z[i].god_izdaniya);
writeln;
end;
end;end;


begin
menu:
clrscr;
gotoxy(25,1);
writeln('Библиотека*');
gotoxy(15,3);
write('1.выборка по жанру');
gotoxy(15,5);
write('2.выборка по автору');
gotoxy(15,7);
write('3.выборка по издательству');
gotoxy(15,9);
write('4.ввод с клавиатуры');
gotoxy(15,11);
write('5.ввод из файла');
gotoxy(15,13);
write('6.вывод всего списка записей');
gotoxy(15,15);
write('7.удаление записей');
gotoxy(15,17);
write('8.выход');
gotoxy(15,21);
readln(m);

case m of
1:janr;
2:avtor;
3:izdatelstvo;
4:Vvod_KL(zap);
5:Vvod_fl(zap);
6: begin
vvod(z,l);
Vivod_sp(z,l);
end;
7:writeln('удаление записей');
8:halt;
end;
write('для выхода нажмите <Enter>');
readln;
goto menu;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(nastena @ 7.12.2009 20:11) *
программу написать написала, а как с графикой быть не знаю((((
Да уж, написала.. Ты вообще что-нибудь про отступы слышала? Теперь ее всю форматировать, чтобы посмотреть? Кроме прочего, она не компилируется..

Ты имеешь в виду, что тебе нужно переделать меню с текстового на графику?


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





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

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


программа рабочая!!!!!!!!!! и компил-ся!!!!!!! я говорю, что нужно добавить немного графики в меню и все!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(nastena @ 8.12.2009 4:48) *
программа рабочая!!!!!!!!!! и компил-ся!!!!!!!
Ты чего кричишь?
Если хочется поупражнять голосовые связки - иди на хоровой форум. norespect.gif
Жду извинений..
Вот, посмотри: Прикрепленное изображение
я не знаю, где ты потеряла букву "r", только в том состоянии, как ты ее выложила, программа не компилируется.

Цитата
я говорю, что нужно добавить немного графики в меню и все!
Что в твоем понимании означает "добавить немного графики"? Ответь нормально на вопрос, который я уже задавал: тебе нужно перевести меню в графический режим или просто украсить? Сделать полосочку, стрелками управлять, а не циферками - так, да?
Или все-таки в граф.режиме надо делать?

Ответь только без крика, ладно?


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5





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

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


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


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(nastena @ 8.12.2009 15:32) *
сожалею, если накричала на вас, но это было не так!
что значит "не так"? При разговоре свой способ выражения крика, при письме - свой. Выломай клавишу с восклицательным знаком у себя на клаве, иначе она тебе еще не раз навредит..

Цитата
а насчет графики нужно, как вы сказали, сделать полосочку, стрелками управлять, а не циферками. я делала фон сегодня , но почему то весь экран становился серым((( помогите плиз)
То есть все-таки речь идет не о графическом меню, а о текстовом (извини, но название вводит в заблуждение).
Текстовых меню тут делалось великое множество, но я что-то сейчас не смог ничего путного найти. Если будешь искать - не используй ничего типа "граф", иначе получишь не то.

Вообще-то, для таких вещей есть Turbo Vision. Но если хочешь, могу помочь сделать..

Покажи, как ты делала фон. И вообще, если что-то спрашиваешь - спрашивай конкретно. Никто не сможет угадать, чего ты там написала. А в программировании все зависит от одного бита..


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






Цитата
сделать полосочку, стрелками управлять, а не циферками
Здесь я выкладывал реализацию меню, если тебя интересует... Как графический, так и текстовый вариант. Приведенное на сайте меню отображается по выбору пользователя: горизонтально или вертикально. Комментарии присутствуют. Разобраться (при желании) несложно. Без желания, разумеется, разобраться не получится никогда.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8





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

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


вот, что я сделала..... (Показать/Скрыть)


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

М
просьба не вставлять в мессадж большие коды повторно. Lapp

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(nastena @ 9.12.2009 15:50) *
вот, что я сделала.....
...
вот только для того, чтобы у меня работали мои процедуры, я их должна послностью переделать в граф режим????...помогите плиз с оформлением меню
Супер. Вывела несколько строчек в графике - вот, что ты сделала.
Теперь о том, чего ты НЕ сделала.
1. Ты не послушала моих слов о том, что графика тебе НЕ НУЖНА. Тебе что, слово что ли нравится, что так к ней пристала?
2. Ты совершенно не вняла совету volvo.

А теперь, что небе НУЖНО сделать:
1. перестать говорить о себе, начать слушать;
2. не выкладывать заново гигантские программы, если изменила несколько строчек (смотреть жутко неудобно);
3. когда выкладываешь код, нужно заботиться о правильной кодировке;
4. меню нужно делать ОТДЕЛЬНО.

Отложи в сторону свою замечательную программу. Если ты хочешь меню - оно ДОЛЖНО быть отдельной процедурой. Напиши отдельную программу для создания/тестирования/отладки меню, и только, когда она БУДЕТ ГОТОВА - подключай процедуру к своей программе. Меню можешь либо взять по ссылке volvo, либо сделать сама с помощью Форума.

И еще раз, главное: научись разговаривать, а не говорить свое только. В разговоре по крайней мере половина - это слушать.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





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