Тема: Меню32
Показать сообщение отдельно
Старый 19.08.2010, 19:10   #4
psih1
Знающий
 
Аватар для psih1
 
Регистрация: 20.03.2010
Сообщений: 271
Написано 16 полезных сообщений
(для 32 пользователей)
Ответ: Меню32

Чет не получается
Program MenuDemo;
Uses    font32,menu32;
Var        
key,n,wi,hiinteger;

procedure OnLoad(ninteger);
begin
wi
:=GetWidthhi:=GetHeight;
while ( 
getKeyClicked<> KE_NONE) do
delay(100);
repeat

n
:= n+1
DrawImage(LoadImage('/logo.png'), (GetWidth/2-64), (GetHeight/2-64));
//Фон
SetColor(237,142,186);
FillRect(1,hi-7,wi-3,6);
//Полоса
SetColor(122,74,133);
FillRect(3,hi-5,(wi-5)*n/100,2);
//Рамка
DrawRect(1,hi-7,wi-3,5);
repaint
if 
n>99 then n:=98;


until false;
end;

Begin
  wi
:=GetWidthhi:=GetHeight;
    
// ------------------------ Установка шрифтов --------------------------------
    
font32.init(2); // Всего 2 шрифта
    
Font(0); LoadFont('Verdana_7'); // Основной шрифт
    
Font(1); LoadFont('Verdana_7b'); // Такой же шрифт, но утолщенный и белый (для выделенного пункта)
    
    // ------------------------ Установка меню --------------------------------
    
menu32.init// инициализация меню
    
LoadCursor(CreateCursor(GetWidth206000255255)); // Создаем курсор
    
SetMenuWindow(00GetWidthGetHeight); // Задаем окно, в котором будет отображаться меню
    
MenuFonts(01); // Основной и курсорный шрифты
    
    
AddItem2(LoadImage('/cube.png'), 'Старт теста''start'); // Добавляем элементы меню
    
AddItem2(LoadImage('/spe2.png'), 'Звук включен''off');
    
AddItem2(LoadImage('/about.png'), 'Информация''about');
    
AddItem2(LoadImage('/error.png'), 'Выхат''exit');
    
    
SetCursor(3); // Пример явного перемещения курсора на нужный пункт
    
ChangeString('Выход'3); // Пример переименования пункта меню
    
    
    // ------------------------ Основной цикл --------------------------------
    
DrawMenu;Repaint;OnLoad(10);
    
repeat
        key
:=KeyToAction(GetKeyPressed); Delay(50);
        if 
key=GA_DOWN then begin CursorDownDrawMenuRepaintDelay(100); end// Вниз
        
if key=GA_UP then begin CursorUpDrawMenuRepaintDelay(100); end// Вверх
        
if (key=GA_FIRE) or (SensorState 1then // Нажали огонь джойстика или двойной клик по сенсорному экрану
            
begin
                
                
if Selected 1 then
                begin
                    
                end
;
                
                if 
Selected 3 then Halt// Если выбрали ВЫХОД - то выход
            
                
            
end;
        
Delay(2); Scroll;
    
until false;
End
__________________
¯¯¯¯\——-/¯¯¯¯ респект любителям BMX
(Offline)
 
Ответить с цитированием