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

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

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

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

Ответ
 
Опции темы
Старый 03.03.2010, 14:50   #1
Dimon
Оператор ЭВМ
 
Регистрация: 22.02.2010
Сообщений: 48
Написано одно полезное сообщение
Как сделать lib_menu32 круговую прокрутку и запоминание курсора

Как сделать использую lib_menu32 круговую прокрутку и запоминание курсора?? Т.е
1, круговая прокрутка- это когда я например на нижнем пунете нажимаю вниз и перехожу на самый верхний пункт. ???

2, запоминание курсора вот например сделал я несколько пунктов в меню. ПУсть "информация" , "о програме", "помощь", "выход", НАпример когда я захожу в раздел "помощь" то при нажатии на правый софт вернусь в главное меню,

( if getkeypressed = -7 then cls; mainmenu; repaint; )

и курсор будет на верхнем пункет "информация", а мне надо чтоб курсор был на пункте "помощь", т.е. куда я заходил.
(Offline)
 
Ответить с цитированием
Старый 03.03.2010, 15:08   #2
Dream
быдло
 
Регистрация: 05.08.2007
Сообщений: 1,435
Написано 614 полезных сообщений
(для 1,489 пользователей)
Ответ: Как сделать lib_menu32 круговую прокрутку и запоминание курсора

1-
Допустим на экран влезается 5 пунктов меню. у тебя есть список из семи пунктов. когда прокручиваешь меню, первым пунктом будет отрисовыватся уже не тот что первый в списке, а n -текущий пункт(сколько уже пролистано) n+5- последний пункт меню, который будет рисоватся. если n+5> 7(количество всех пунктов меню, которые есть у нас в списке) тогда рисуем пункты начинае с 1 до (n+5-7).
гдето так. конечно можно сделать всё по людски через mod% и прочеие функции, но я не хочетел так писать, вдруг будет сложно понять.
2-3. тут главное нормально организовать эти самы меню. и запомнитать предыдущий пункт меню.
(Offline)
 
Ответить с цитированием
Старый 03.03.2010, 17:29   #3
odd
Мастер
 
Аватар для odd
 
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений
(для 713 пользователей)
Ответ: Как сделать lib_menu32 круговую прокрутку и запоминание курсора

Так сложно выяснить позицию курсора в момент входа в пункт и потом снова переместить его туда же? Всё это уже есть в библиотеке. Функций там столько, что можно и круговую прокрутку курсора тоже делать без проблем. Почитай документацию к библиотеке.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Dimon (10.03.2010)
Старый 10.03.2010, 15:58   #4
Dimon
Оператор ЭВМ
 
Регистрация: 22.02.2010
Сообщений: 48
Написано одно полезное сообщение
Ответ: Как сделать lib_menu32 круговую прокрутку и запоминание курсора

Сообщение от odd Посмотреть сообщение
Так сложно выяснить позицию курсора в момент входа в пункт и потом снова переместить его туда же? Всё это уже есть в библиотеке. Функций там столько, что можно и круговую прокрутку курсора тоже делать без проблем. Почитай документацию к библиотеке.
я не понял как сделать круговую прокрутку и запоминание курсора. ТАм только функции а куда их вставлять непонятно.
(Offline)
 
Ответить с цитированием
Старый 10.03.2010, 19:03   #5
cherepets
Бывалый
 
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений
(для 215 пользователей)
Ответ: Как сделать lib_menu32 круговую прокрутку и запоминание курсора

посмотри пример в теме про либу. там показано как явно задавать пункт на который указывает курсор. если курсор на последнем и нажата вниз -> задай 1 и наоборот.

вот тебе и круговая прокрутка))
(Offline)
 
Ответить с цитированием
Старый 11.03.2010, 15:48   #6
Dimon
Оператор ЭВМ
 
Регистрация: 22.02.2010
Сообщений: 48
Написано одно полезное сообщение
Ответ: Как сделать lib_menu32 круговую прокрутку и запоминание курсора

ДА НЕТУ ТАМ ТАКОГО!!! ТАМ только если выбран пункт то делать то-то , а если направлен курсор ТО НЕТУ ТАКОЙ КОМАНДЫ!!! ЧТОБ СДЕЛАТЬ ЕСЛИ НАПРАВлен на послденем то передвинуться к первому при нажатии низа!!!!!

и загрузку курсора не понятнно как делать!!
если я делаю так

if key2 = -7 then mainmenu; SetCursor(4); repaint;

то ничего не выхлодит!!!!
(Offline)
 
Ответить с цитированием
Старый 12.03.2010, 11:22   #7
cherepets
Бывалый
 
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений
(для 215 пользователей)
Ответ: Как сделать lib_menu32 круговую прокрутку и запоминание курсора

пример там в первом посте. читай внимательно. odd оставил все комменты нужные для понимания
(Offline)
 
Ответить с цитированием
Старый 12.03.2010, 15:50   #8
Dimon
Оператор ЭВМ
 
Регистрация: 22.02.2010
Сообщений: 48
Написано одно полезное сообщение
Ответ: Как сделать lib_menu32 круговую прокрутку и запоминание курсора

Сообщение от cherepets Посмотреть сообщение
пример там в первом посте. читай внимательно. odd оставил все комменты нужные для понимания
да НЕТУ ТАМ такого!!!! СКажите как наглюдно пользоваться этой вешью! Я не понял как запоминать курсор и потом его зугружатЬ!!!! Скажите какие команды нужно для запоминанеия и выгружания!!! И как потом возвращаться правильно к меню /!!! Пожалуйста!! Всего 2 функции давно бы сказали за 3 минуты чем одно и тоже говоирть ! НЕту там такого в примере!!!!

----
УРА!!!!!!!!!!!!!!!!!!!!! НАКОЕНЦ ТО Я ПОНЯЛ!!!!! СПАСИБО ВСЕМ БОЛЬШОЕ!!!! РАЗОБРАЛСЯ!!!!! Я СДЕЛАЛ ЗАПОминание курсора и потом его загружениЕ!!!!!! ОСталось только КРУГОВУЮ прокрутку, ПОЖАЛУЙСТА ПОМОГИТЕ Её сделать!
(Offline)
 
Ответить с цитированием
Старый 12.03.2010, 17:44   #9
cherepets
Бывалый
 
Регистрация: 18.08.2009
Сообщений: 745
Написано 146 полезных сообщений
(для 215 пользователей)
Ответ: Как сделать lib_menu32 круговую прокрутку и запоминание курсора

зацитирую пример:
...
SetCursor(4); // Пример явного перемещения курсора на нужный пункт
...
if 
SelectedValue 'exit' then Halt// Можно и так проверять. Чтоб не ломать мозги: какой же там номер пункта?
... 
а теперь себя:
Сообщение от cherepets Посмотреть сообщение
посмотри пример в теме про либу. там показано как явно задавать пункт на который указывает курсор. если курсор на последнем и нажата вниз -> задай 1 и наоборот.

вот тебе и круговая прокрутка))
(Offline)
 
Ответить с цитированием
Старый 12.03.2010, 17:53   #10
Dimon
Оператор ЭВМ
 
Регистрация: 22.02.2010
Сообщений: 48
Написано одно полезное сообщение
Ответ: Как сделать lib_menu32 круговую прокрутку и запоминание курсора

Сообщение от cherepets Посмотреть сообщение
зацитирую пример:
...
SetCursor(4); // Пример явного перемещения курсора на нужный пункт
...
if 
SelectedValue 'exit' then Halt// Можно и так проверять. Чтоб не ломать мозги: какой же там номер пункта?
... 
а теперь себя:
ну если я делаю if selected то этот пункт должен выбираться! А мне надо, чтоб если у меня курсор наведен на последнем пункте, и листнуть вниз то меня перенесло на первый. И наоборот, если, когда наведен курсор на первом нажать вверх, то перебросит на нижний. Хотя это анологично делается. Я не знаю какой командой моно получить тот пункт меню, на который наведен курсор!
(Offline)
 
Ответить с цитированием
Старый 12.03.2010, 18:11   #11
odd
Мастер
 
Аватар для odd
 
Регистрация: 06.09.2007
Адрес: Донецк, ДНР
Сообщений: 1,023
Написано 298 полезных сообщений
(для 713 пользователей)
Ответ: Как сделать lib_menu32 круговую прокрутку и запоминание курсора

Короче, я уже выложил пример в библиотеках.
(Offline)
 
Ответить с цитированием
Старый 13.03.2010, 20:40   #12
VM
Оператор ЭВМ
 
Регистрация: 24.09.2007
Сообщений: 36
Написано 2 полезных сообщений
(для 3 пользователей)
Re: Как сделать lib_menu32 круговую прокрутку и запоминание курсора

Если в меню 4 строки
if key = GA_UP then
  if Selected = 0 then SetCursor(3) else CursorUp;
if key = GA_DOWN then 
  if Selected = 3 then begin SetCursor(0) else CursorDown;
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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


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


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