Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > MidletPascal > Основной форум

Основной форум Сюда все проблемы связанные с программированием.

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

Помогите объединить
program Load;
Var
n,wi,hi:integer;
begin
wi
:=GetWidth; hi:=GetHeight;
while ( 
getKeyClicked<> KE_NONE) do
delay(100);
repeat

n
:= n+1; 
DrawImage(LoadImage('/pidgin.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
begin
SetColor
(0,0,0);
FillRect(0,0,wi,hi);
end;

until false;
end. 
и менюшку
Uses    font32, sensor, menu32;

Var        
key: integer;



Begin

    
// ------------------------ Установка шрифтов --------------------------------

    
font32.init(2); // Всего 2 шрифта

    
Font(0); LoadFont('Verdana_7'); // Основной шрифт

    
Font(1); LoadFont('Verdana_7b'); // Такой же шрифт, но утолщенный и белый (для выделенного пункта)

    

    // ------------------------ Установка меню --------------------------------

    
menu32.init; // инициализация меню

    
LoadCursor(CreateCursor(GetWidth, 24, 4278190250)); // Создаем курсор

    
SetMenuWindow(0, 0, GetWidth, GetHeight); // Задаем окно, в котором будет отображаться меню

    
MenuFonts(0, 1); // Основной и курсорный шрифты

    

    
AddItem2(LoadImage('/cube.png'), 'Старт', 'start'); // Добавляем элементы меню

    
AddItem2(LoadImage('/star.png'), 'Настройки', 'settings');

    
AddItem2(None, 'Помощь', 'help'); // Пример пункта где иконка не нужна

    
AddItem2(LoadImage('/spe2.png'), 'Звук включен', 'off');

    
AddItem2(LoadImage('/about.png'), 'Тут рассказывается об этой замечательной программе подробно', 'about');

    
AddItem2(LoadImage('/error.png'), 'Выхат', 'exit');

    

    
SetCursor(4); // Пример явного перемещения курсора на нужный пункт

    
ChangeString('Выход', 5); // Пример переименования пункта меню

    

    // ------------------------ Подготовка сенсорного экрана --------------------------------

    
sensor.init;

    

    
// ------------------------ Основной цикл --------------------------------

    
DrawMenu; Repaint;

    
repeat

        key
:=KeyToAction(GetKeyPressed); Delay(50);

        if 
key=GA_DOWN then begin CursorDown; DrawMenu; Repaint; Delay(100); end; // Вниз

        
if key=GA_UP then begin CursorUp; DrawMenu; Repaint; Delay(100); end; // Вверх

        
if (key=GA_FIRE) or (SensorState = 1) then // Нажали огонь джойстика или двойной клик по сенсорному экрану

            
begin

                

                
if Selected = 3 then

                begin

                    
if SelectedItem = 'Звук включен' then begin ChangeString('Звук выключен', 3); ChangeImage(LoadImage('/spe1.png'), 3); end;

                    else 
begin ChangeString('Звук включен', 3); ChangeImage(LoadImage('/spe2.png'), 3); end;

                    
DrawMenu; Repaint; Delay(100);

                
end;

                

                if 
Selected = 5 then Halt; // Если выбрали ВЫХОД - то выход

                
if SelectedItem = 'Выход' then Halt; // Можно и так проверять. Чтоб не ломать мозги: какой же там номер пункта?

                

            
end

        

        
if (pointer_state = 1) then // Если нажали на сенсорный экран

            
begin

                SensorClick
(pointer_pressed_x, pointer_pressed_y); // Передаем координаты в меню

                
DrawMenu; Repaint;

            
end;

        
Delay(2); Scroll;

    
until false; 
Сам все варианты пробовал не получается наверно опыта не хватает
__________________
¯¯¯¯\——-/¯¯¯¯ респект любителям BMX
(Offline)
 
Ответить с цитированием
Старый 19.08.2010, 18:08   #2
Айнур
AnyKey`щик
 
Регистрация: 20.06.2010
Сообщений: 7
Написано 2 полезных сообщений
(для 2 пользователей)
Ответ: Меню32

load сделай в виде проседуры и вставь в менюшку и вызови где надо.
(Offline)
 
Ответить с цитированием
Старый 19.08.2010, 18:32   #3
psih1
Знающий
 
Аватар для psih1
 
Регистрация: 20.03.2010
Сообщений: 271
Написано 16 полезных сообщений
(для 32 пользователей)
Ответ: Меню32

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

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

procedure OnLoad(n: integer);
begin
wi
:=GetWidth; hi:=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
:=GetWidth; hi:=GetHeight;
    
// ------------------------ Установка шрифтов --------------------------------
    
font32.init(2); // Всего 2 шрифта
    
Font(0); LoadFont('Verdana_7'); // Основной шрифт
    
Font(1); LoadFont('Verdana_7b'); // Такой же шрифт, но утолщенный и белый (для выделенного пункта)
    
    // ------------------------ Установка меню --------------------------------
    
menu32.init; // инициализация меню
    
LoadCursor(CreateCursor(GetWidth, 20, 6000255255)); // Создаем курсор
    
SetMenuWindow(0, 0, GetWidth, GetHeight); // Задаем окно, в котором будет отображаться меню
    
MenuFonts(0, 1); // Основной и курсорный шрифты
    
    
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 CursorDown; DrawMenu; Repaint; Delay(100); end; // Вниз
        
if key=GA_UP then begin CursorUp; DrawMenu; Repaint; Delay(100); end; // Вверх
        
if (key=GA_FIRE) or (SensorState = 1) then // Нажали огонь джойстика или двойной клик по сенсорному экрану
            
begin
                
                
if Selected = 1 then
                begin
                    
                end
;
                
                if 
Selected = 3 then Halt; // Если выбрали ВЫХОД - то выход
            
                
            
end;
        
Delay(2); Scroll;
    
until false;
End. 
__________________
¯¯¯¯\——-/¯¯¯¯ респект любителям BMX
(Offline)
 
Ответить с цитированием
Старый 20.08.2010, 12:07   #5
Айнур
AnyKey`щик
 
Регистрация: 20.06.2010
Сообщений: 7
Написано 2 полезных сообщений
(для 2 пользователей)
Ответ: Меню32

Вот приблизительно так.
Program MenuDemo;
Uses    font32,menu32;
Var        
key,n,wi,hi: integer;

procedure OnLoad(n: integer);
begin
wi
:=GetWidth; hi:=GetHeight;
while ( 
getKeyClicked<> KE_NONE) do
delay(100);
DrawImage(LoadImage('/logo.png'), (GetWidth/2-64), (GetHeight/2-64));
repeat
n
:= n+1; 

//Фон
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;
until n>99;
SetColor(255,255,255);
FillRect(1,hi-7,wi,7);
repaint;
end;

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


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 16:37.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com