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

> меню во фрейме, как єто сделать?
сообщение
Сообщение #1


Новичок
*

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

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


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


Бывалый
***

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

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


Вот, что я написал в прошлом году по этому поводу:

Unit FMenu;
Interface


Type menu=record
But:byte;
button:array[1..8] of string[22];
Cin,Cout:integer;
Fon:array[1..2]of integer;
Zag : string[10];
end;

Var N : menu;


Function SimpleMenu : byte;

IMPLEMENTATION
Uses Graph,crt;

Function SimpleMenг : byte;
Var i,j:integer;;
C:char;
Y:1..8;
BEGIN
SetFillStyle(N.Fon[1],N.Fon[2]);
Y:=1; C:=' ';
While ord©<>13 do begin
i:=0;
With N do begin
settextstyle(4,0,8);{перенисите нужный BGI шрифт!}
setcolor(Cout);
Bar(0,0,640,480);
OutTextXY(20,5,Zag);
settextstyle(4,0,5);
While i<>But do begin
i:=i+1;
If i=Y then setcolor(Cin) else setcolor(Cout);
OutTextXY(20,i*TextHeight(N.Button[i])+60,N.Button[i]);
end;
end;
C:=Readkey;
Case ord( c ) of
72:If Y<>1 then Y:=Y-1 else Y:=N.But;
80:If Y<>N.But then Y:=y+1 else Y:=1;
end;
end;
simpleMenu:=Y;
end;

BEGIN

End.


Модуль состоит из одной функции SimpleMenu, типа Menu и глобальной переменной N. Переменная N отвечает за внешний вид и содержимое меню, а точнее за:
1) кол-во кнопок в меню (переменная Menu.but)
2) надписи в кнопках(переменная Menu.Button)
3) названия меню(переменная Menu.Zag)
4) цвет фона в стиле Bar. В переменной Menu.Fon[1] задан тип фона(см. setfillstyle), а в Menu.Fon[2] цвет фон.
5) Цвет пассивных и активных кнопок. Menu.Cin - cursor in(курсор внутри)
Menu.Cout - cursor out(курсор вне)

Функция SimpleMenu: создает меню и обробатывает сигналы пользователя:
стрелка вверх: сдвинуть указатель вверх
стрелка вниз: сдвинуть указатель вниз
Enter : выбрать выделенную кнопку.
Функция возвращает номер выбранной пользователем кнопки.
Примечание : модуль использует какой-то BGI шрифт, не помню какой точно.

Прошу не судить строго, я тогда не знал ни о каком ООП, мышь на паскале казалась нереальностью... :p2:

Сообщение отредактировано: volvo -


--------------------
Доброго времени суток.
:nnn:
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Wait   меню во фрейме   14.05.2005 22:00
Altair   В каком еще фрейме ? вы о чем?   14.05.2005 22:09
NightPaladin   Мне кажется можно только нарисовать параллелепипед…   14.05.2005 22:25
Wait   Выложите, пожалуйста... :molitva:   14.05.2005 22:51
volvo   Если это "меню в рамке", то можно и поис…   14.05.2005 22:35
NightPaladin   Лично у меня получилось вот так: program asd; Uses…   15.05.2005 10:11
Дож   Вот, что я написал в прошлом году по этому поводу:…   15.05.2005 20:45
NightPaladin   Я эб этом, что мышь к паскалю можно приспособить…   15.05.2005 20:55
NightPaladin   Красиво - мой респект Дож. Если Wait надо шоб полн…   15.05.2005 20:50
Wait   Усовершенствуйте, плиз, если Вам не трудно, буду …   17.05.2005 21:58
Wait   Или кто-нибудь... напишите это мне, пожалуйста. Оч…   18.05.2005 2:52
Дож   Я тебя недопонял.   15.05.2005 20:51
Дож   ААА! Да, насчет мыши я все уже хорошо знаю, но…   15.05.2005 21:05
volvo   Кого интересует меню с ООП - смотрите здесь: Меню …   15.05.2005 21:27
Дож   Ну, что тебя не устраивает здесь: Unit FMenu; In…   18.05.2005 22:57
Дож   Не компилируется Graph... graphix.pas(9,11) Fata…   20.05.2005 0:46
volvo   Ну так ты в ту же директорию GRAPH.TPU скопируй...…   20.05.2005 0:50
Дож   Не получается, GRAPH.TPU там уже был... Та же ошиб…   20.05.2005 1:09
-= M0hs =-   Не получается, GRAPH.TPU там уже был... Та же оши…   7.02.2007 4:09
Дож   -= M0hs =- тема потеряла актуальность :) Я даже н…   9.02.2007 0:45


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

 





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