![]() |
Модераторы: javastic, AntonSaburov |
![]() ![]() ![]() |
|
satellite1977 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 7.8.2007 Репутация: нет Всего: нет |
Привет всем. Как сделать выход из приложения в Canvas? Пытаюсь создать объект главного класса мидлета и использовать его метод destroyApp(), но выскакивает ошибка SecurityExeption - вроде и правильно, так как объект мидлета уже создан а я пытаюсь создать еще один. Тогда как же поступить? Спасибо за внимание )))
class Graf extends Canvas implements CommandListener { public Command CExit; public Graf() { super(); CExit = new Command("Выход", Command.EXIT, 1); } public void paint(Graphics g) { addCommand(CExit); setCommandListener(this); } public void commandAction(Command c, Displayable d) { if (c == CExit) { ???? } } |
|||
|
||||
SatanClaus |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 116 Регистрация: 20.6.2007 Репутация: 3 Всего: 3 |
У тебя должен быть примерно такой мидлет
Потом в обработке нажатия клавиши, в канвасе, пишешь Main.getInstance().destroyApp(true); И все... Только в destroyApp(boolean destroy) ты должен закрывать все потоки и все такое... А потом вызывать notifyDestroyed(); |
|||
|
||||
hamsterKSU |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 401 Регистрация: 20.10.2006 Где: Украина, Херсон Репутация: 7 Всего: 11 |
а о таких вещах как статические переменные или методы слыхал?
в классе мидлета делаешь статическую переменную на него самого и потом обращаешся к ней и вызываешь destroyApp() Добавлено через 22 секунды опередили ![]() |
|||
|
||||
SatanClaus |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 116 Регистрация: 20.6.2007 Репутация: 3 Всего: 3 |
![]() |
|||
|
||||
satellite1977 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 7.8.2007 Репутация: нет Всего: нет |
Спасибо большое. Когда-то я очень хорошо владел Бейсиком (во времена ZX SPECTRUM )))), сейчас пытаюсь овладеть ООП, дается нелегко, потому что привык к простому коду без всяких классов))).
Может у кого-то своими вопросами вызываю гнев, но вы уж извините ))) Отдельное спасибо SatanClaus, за то, что привел такой понятный ответ с примером. Это сообщение отредактировал(а) satellite1977 - 20.8.2007, 11:36 |
|||
|
||||
W0LF |
|
|||
![]() alexander lonsky ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1164 Регистрация: 9.2.2006 Где: Ukraine.Dnepropet rovsk Репутация: 19 Всего: 20 |
c WTK идет набор примеров
...:\WTK22\apps\ там нормально много чего описано -------------------- iOS developer |
|||
|
||||
math64 |
|
||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 8 Всего: 72 |
Если сделать как было предложено и во время игры был звонок то после ответа на звонок и возврата к игре будет создан новый Canvas и игра начнётся сначала (хотя конечно смотря как он написан). Лучше Canvas создать в конструкторе, а startApp() только показывать. Указатель на Midlet можно передать в конструкторе Canvas, тогда его можно использовать в нескольких мидлетах:
Или можно перенести обработку exit в мидлет:
|
||||
|
|||||
![]() ![]() ![]() |
FAQ раздела лежит здесь! |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java ME (J2ME) | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |