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

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

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

Ответ
 
Опции темы
Старый 09.08.2008, 08:01   #1
odd
Мастер
 
Аватар для odd
 
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений
(для 713 пользователей)
Смех Lib_menu32 - Графическое меню без головной боли

Последнее обновление 02.10.2009
Библиотека графических меню.
Пробуйте. Оценивайте. Делайте советы какие ещё функции можно добавить.
На данный момент список функций такой:

init Инициализация менюОчистка списка пунктовМожно вызывать неоднократно (напримердля очистки памяти).
 
SetMenuWindow(xintegeryintegerwintegerhinteger) - Установить окнов котором будет
    отображаться наше меню
xкоординаты левого верхнего углаw и h ширина и высота окна.
    
По умолчанию устанавливается окно размером в весь дисплей телефона.
 
LoadCursor(fnamestring) - Загрузить из ресурсов картинку с именем fnameкоторая будет использоваться
    в качестве курсора меню
.
 
AddItem(fnamestringtxtstring) - Добавление пункта в меню.
    
fname Путь к картинке из ресурсовкоторая будет использоваться в качестве иконки для пункта меню
    
(если иконка не нужна в качестве пути пишем строчку'NONE')
    
txt Текст подписи для пункта меню
 
MenuFonts
(f1integerf2integer) - Установить шрифтыкоторые будут использоваться в меню.
    
f1 это шрифтиспользуемый для всех элементов меню
    f2 
шрифтиспользуемый для отображения выделенного пункта
    По умолчанию используется нулевой шрифт в обоих случаях
.
 
DrawMenu Отрисовка меню в буфере экранаЧтобы меню стало видимымиспользуйте Repaint.
    
Меню при создании сохраняет свой фон и в последующих операциях использует его,
    
по-этому вам не нужно делать восстановление фона меню после каждого изменения положения курсора.
 
HideMenu Спрятать меню (восстановить фон). Операция проходит в буфере экрана.
    
Чтобы увидеть результаты изменения используйте Repaint.
 
CursorUp Передвигает курсор в меню вверх на 1 пункт
 
CursorDown 
Передвигает курсор в меню вниз на 1 пункт
 
integer Selected 
Возвращает номер выделенного пункта меню (счёт идет с 0).
 
string SelectedItem Возвращает значение (текствыделенного пункта меню
 
SetOffset
(iinteger) - Установить отступ текста от левого края окна (и от иконкиесли есть).
    
По умолчанию отступ равен 3 пикселам
Библиотека тесно использует другую библиотеку - Lib_font32, по-этому без нее она работать не будет. Уже есть идея добавить плавную прокрутку текста в пунктах с длинным текстом. Сейчас уже бьюсь над её реализацией.
Вложения
Тип файла: zip Lib_menu32.zip (4.5 Кб, 1429 просмотров)
Тип файла: zip MenuDemo.zip (18.5 Кб, 1420 просмотров)

Последний раз редактировалось Piligrim, 03.10.2009 в 10:47.
(Offline)
 
Ответить с цитированием
Эти 12 пользователя(ей) сказали Спасибо odd за это полезное сообщение:
Ghost_Russia (09.08.2008), kondr1 (12.09.2010), Kurdt (09.08.2008), Ma)(imuM (31.05.2009), Mark Castle (23.11.2008), midlet_pascal (29.01.2012), Pyth_ON (30.07.2009), Romanzes (09.08.2008), sasha_peleng (04.11.2008), Strelok (09.08.2008), valhof (09.08.2008), ЯМАКc (17.10.2008)
Старый 09.08.2008, 15:18   #2
Kurdt
ПроЭктировщик
 
Регистрация: 28.03.2007
Сообщений: 194
Написано 7 полезных сообщений
(для 25 пользователей)
Re: Lib_menu32 - Графическое меню без головной боли

неплохо бы еще функцию

Установка определенного пункта меню активным (можно использовать CursorDown но это помоему более процесороемкий процесс)
(Offline)
 
Ответить с цитированием
Старый 09.08.2008, 22:29   #3
Romanzes
Разработчик
 
Аватар для Romanzes
 
Регистрация: 06.04.2008
Сообщений: 541
Написано 196 полезных сообщений
(для 637 пользователей)
Ответ: Lib_menu32 - Графическое меню без головной боли

А как изменять текст пункта меню?
(Offline)
 
Ответить с цитированием
Старый 09.08.2008, 22:35   #4
Strelok
Оператор ЭВМ
 
Регистрация: 05.07.2008
Сообщений: 30
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Lib_menu32 - Графическое меню без головной боли

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

Последний раз редактировалось Strelok, 09.08.2008 в 22:58.
(Offline)
 
Ответить с цитированием
Старый 09.08.2008, 22:57   #5
Strelok
Оператор ЭВМ
 
Регистрация: 05.07.2008
Сообщений: 30
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Lib_menu32 - Графическое меню без головной боли

И ещё было бы здорово - если текст пункта больше заданного окна меню то он прокручивается влево-вправо. И не плохо бы сделать ползунок скролинга, с возможностью отключения. Высота пунктов меню, как я понял, зависит от размера иконки?
(Offline)
 
Ответить с цитированием
Старый 10.08.2008, 09:29   #6
odd
Мастер
 
Аватар для odd
 
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений
(для 713 пользователей)
Ответ: Lib_menu32 - Графическое меню без головной боли

Да. Высота пункта пока зависит от иконки, но в свежей версии появится функция настройки высоты пункта. Скролинг уже делается. Также добавлю функции удаления и изменения текста пунктов. Над полосой прокрутки я уже тоже думал. Скорее всего сделаю и её, но уже в отдельной библиотеке. Ждите обновления библиотек.
(Offline)
 
Ответить с цитированием
Старый 10.08.2008, 12:05   #7
Kurdt
ПроЭктировщик
 
Регистрация: 28.03.2007
Сообщений: 194
Написано 7 полезных сообщений
(для 25 пользователей)
Re: Lib_menu32 - Графическое меню без головной боли

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

Еще былобы непохо центрировать надписи в меню.
(Offline)
 
Ответить с цитированием
Старый 10.08.2008, 21:01   #8
Strelok
Оператор ЭВМ
 
Регистрация: 05.07.2008
Сообщений: 30
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Re: Lib_menu32 - Графическое меню без головной боли

Сообщение от Kurdt Посмотреть сообщение
и еще одну мелочь можно былобы. вместо курсора битмапа генерировать филрект с опр. цветом, если картинка незадана. просто на разных разрешениях телефонах не подобртать одинаковой картинки... да и памяти меньше будет да и несложно в доработке. 2 строчки)

Еще былобы непохо центрировать надписи в меню.
А ещё лучше сделать чтоб вместо LoadCursor(fname: string) было LoadCursor(fname: image) и тогда при помощи других библиотек можно было бы обрабатывать курсор, в том числе и растягивать под размер окна
(Offline)
 
Ответить с цитированием
Старый 10.08.2008, 22:07   #9
Strelok
Оператор ЭВМ
 
Регистрация: 05.07.2008
Сообщений: 30
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Lib_menu32 - Графическое меню без головной боли

У меня какой то лаг странный - главное меню построенно с использованием этой библы, после нескольких переходов по пунктам меню и возврате в главное начинает автоматически включаться первый пункт
(Offline)
 
Ответить с цитированием
Старый 10.08.2008, 23:32   #10
Strelok
Оператор ЭВМ
 
Регистрация: 05.07.2008
Сообщений: 30
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Lib_menu32 - Графическое меню без головной боли

Сменил реагирование кнопки огня с кейпрессед на кейкликед и глюк пропал
(Offline)
 
Ответить с цитированием
Старый 18.08.2008, 08:30   #11
odd
Мастер
 
Аватар для odd
 
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений
(для 713 пользователей)
Ответ: Lib_menu32 - Графическое меню без головной боли

Немного подправлил библиотеку. Почти все ваши пожелания были учтены.
От себя еще добавил функции поддержки сенсорного экрана.
Скроллинга пока нет :-( но я уже работаю в данном направлении.

Последний раз редактировалось Piligrim, 03.10.2009 в 10:48.
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо odd за это полезное сообщение:
Strelok (18.08.2008), ЯМАКc (17.10.2008)
Старый 18.08.2008, 23:07   #12
Strelok
Оператор ЭВМ
 
Регистрация: 05.07.2008
Сообщений: 30
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Lib_menu32 - Графическое меню без головной боли

Ругается на pointer_state - пишет что необъявлена нигде
(Offline)
 
Ответить с цитированием
Старый 19.08.2008, 00:10   #13
Romanzes
Разработчик
 
Аватар для Romanzes
 
Регистрация: 06.04.2008
Сообщений: 541
Написано 196 полезных сообщений
(для 637 пользователей)
Ответ: Lib_menu32 - Графическое меню без головной боли

Strelok, поищи в теме про Lib_game аттач с именем Lib_sensor.
(Offline)
 
Ответить с цитированием
Старый 19.08.2008, 18:25   #14
Strelok
Оператор ЭВМ
 
Регистрация: 05.07.2008
Сообщений: 30
Написано 0 полезных сообщений
(для 0 пользователей)
Ответ: Lib_menu32 - Графическое меню без головной боли

так он у меня и так есть
(Offline)
 
Ответить с цитированием
Старый 19.08.2008, 18:35   #15
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Lib_menu32 - Графическое меню без головной боли

Сообщение от Strelok Посмотреть сообщение
так он у меня и так есть
А в uses объявлена?
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Графическое меню. GRAY_WOLF Наше Open Source Software 0 18.12.2009 20:33
графический планшет и 3D Max SKA_DIMKA 3D Моделирование 11 18.08.2009 17:28
Как программно узнать имя пункта меню который был выбран (Обычное/стандартные меню)? Richik Основной форум 5 25.05.2009 23:20
2д игровой графический чат Serg153 Основной форум 17 01.02.2009 00:35
Графическое меню в Midlet Pascal. Как? JIexa Основной форум 9 29.06.2008 13:37


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


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