Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Опять софт-клавиши, Телефон о их нажатии не сообщает 
V
    Опции темы
DeMoNN
Дата 1.4.2009, 06:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 179
Регистрация: 21.3.2008

Репутация: нет
Всего: 2



Уже сколько времени искал ответ на этот вопрос. Знаю, эта тема уже обсуждалась и не раз, но проблема в том, что мой смарт не сообщает о нажатии софтовых клавиш. Но ведь ява об этом как-то узнает, ведь команды смарт обрабатывает исправно. Может можно добавить команды в полноэкранном режима canvas'а? Но как тогда узнать какая из них будет левой, а какая правой? У разных телефонов это же по-разному. Или есть другой способ?
PM MAIL ICQ   Вверх
eugine_s
Дата 1.4.2009, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 581
Регистрация: 14.11.2007
Где: Киев

Репутация: 17
Всего: 17



Самый простой способ узнать код кнопки это при нажатии на кнопку выводить код этой кпонки на экран.

Смарты от нокии и se точно ловят софт кнопки. Обычно коды: -6 и -7 
PM MAIL   Вверх
DeMoNN
Дата 1.4.2009, 12:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 179
Регистрация: 21.3.2008

Репутация: нет
Всего: 2



я ж ясно сказал - МОЙ СМАРТ ОБ ИХ НАЖАТИИ НЕ ОПОВЕЩАЕТ МЕТОД keyPressed(int keyCode), этот метод НЕ вызывается. У меня есть прога, показывающая коды клавиш, но софт клавиши она НЕ показывается.
ЗЫ у мну nokia E71
PM MAIL ICQ   Вверх
eugine_s
Дата 1.4.2009, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 581
Регистрация: 14.11.2007
Где: Киев

Репутация: 17
Всего: 17



Цитата(DeMoNN @  1.4.2009,  12:06 Найти цитируемый пост)
я ж ясно сказал - МОЙ СМАРТ ОБ ИХ НАЖАТИИ НЕ ОПОВЕЩАЕТ МЕТОД keyPressed(int keyCode)

Будь добр показать, где в первом посте сказано про метод keyPressed ? 


Вообщем, хз - может ты там commandListener вешаешь, может еще что-то. Попробуй fullScreen сделать (все левая или правая нажата - определить не проблема - коды кнопок разные будут).
PM MAIL   Вверх
DeMoNN
Дата 1.4.2009, 13:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 179
Регистрация: 21.3.2008

Репутация: нет
Всего: 2



ну так как всетаки определить, какая была нажата?
Хотя как вариант можно попробовать декомпильнуть несколько игр и посмотреть, как это там реализовано.
PM MAIL ICQ   Вверх
eugine_s
Дата 1.4.2009, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 581
Регистрация: 14.11.2007
Где: Киев

Репутация: 17
Всего: 17



Цитата(DeMoNN @  1.4.2009,  13:37 Найти цитируемый пост)
ну так как все таки определить, какая была нажата?


Ты вопрос можешь правильно написать? Тебя интересует какая была нажата кнопка или почему у тебя для софт не вызывается keyPressed? На первую часть я уже дал ответ: в keyPressed зафиксировать нажатую кнопку и в paint вывести на экран код кнопки. Про второе тут сложнее сказать, ты на canvas commandListener вышаешь? 


PM MAIL   Вверх
DeMoNN
Дата 1.4.2009, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 179
Регистрация: 21.3.2008

Репутация: нет
Всего: 2



я про то, что на софт не вызывается keyPressed
PM MAIL ICQ   Вверх
eugine_s
Дата 1.4.2009, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 581
Регистрация: 14.11.2007
Где: Киев

Репутация: 17
Всего: 17



Цитата(DeMoNN @  1.4.2009,  16:15 Найти цитируемый пост)
я про то, что на софт не вызывается keyPressed 

Цитата(eugine_s @  1.4.2009,  15:31 Найти цитируемый пост)
Про второе тут сложнее сказать, ты на canvas commandListener вышаешь?

?

Наверное лучше исходники покажи. 


PM MAIL   Вверх
DeMoNN
Дата 1.4.2009, 17:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 179
Регистрация: 21.3.2008

Репутация: нет
Всего: 2



Код

import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;

public class Cnv extends Canvas implements CommandListener
{
  Command cExit;
  my11 midlet;
  public Cnv(my11 m)
  {
    midlet = m;
    cExit = new Command("", Command.CANCEL, 0);
    addCommand(cExit);
    setFullScreenMode(true);
    repaint();
  }
  public void paint(Graphics g)
  {
    g.setColor(255, 0, 0);
    g.drawString("Выход", getWidth()-6, getHeight()-6, Graphics.BOTTOM|Graphics.RIGHT);
  }
  public void commandAction(Command c, Displayable d)
  {
    if (c == cExit) { midlet.doExit(); }
  }
}



PM MAIL ICQ   Вверх
W0LF
Дата 1.4.2009, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


alexander lonsky
***


Профиль
Группа: Участник
Сообщений: 1164
Регистрация: 9.2.2006
Где: Ukraine.Dnepropet rovsk

Репутация: 19
Всего: 20



чета я тута ваще keyPressed() не заметил
а если Вы называете keyPressodом несрабатывание вот этого - 
Код

if (c == cExit) { midlet.doExit(); }

куска кода, то все просто - 
кто будет дописывать в конструкторе- 
Код

setCommandListener(this)

???


--------------------
iOS developer
PM MAIL WWW Skype GTalk   Вверх
DeMoNN
Дата 1.4.2009, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 179
Регистрация: 21.3.2008

Репутация: нет
Всего: 2



Цитата(W0LF @  1.4.2009,  17:57 Найти цитируемый пост)
setCommandListener(this)

точно, забыл

дык я другой исходник дал, без keyPressed
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.0480 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.