Я разрабатываю мобильное приложение в J2ME. Теперь я конвертирую его в J2ME Polish. В моем приложении я фиксирую изображение с помощью камеры в мобильном телефоне. Он отлично работает в J2ME. Но в J2ME Polish это не работает. Я не могу это разрешить.Невозможно сделать снимок с помощью камеры в J2ME Polish?
приведен фрагмент кода приведен ниже
import javax.microedition.lcdui.Canvas;
import javax.microedition.media.control.VideoControl;
//...
public class VideoCanvas extends Canvas {
// private VideoMIDlet midlet;
// Form frm
Form frm=null;
public VideoCanvas(VideoControl videoControl) {
int width = getWidth();
int height = getHeight();
// this.midlet = midlet;
//videoControl.initDisplayMode(VideoControl.USE_DIRECT_VIDEO, this);
//Canvas canvas = StyleSheet.currentScreen;
//canvas = MasterCanvas.instance;
videoControl.initDisplayMode(VideoControl.USE_DIRECT_VIDEO,this);
try {
videoControl.setDisplayLocation(2, 2);
videoControl.setDisplaySize(width - 4, height - 4);
} catch (MediaException me) {}
videoControl.setVisible(true);
}
public VideoCanvas(VideoControl videoControl,Form ff) {
frm=ff;
int width = getWidth();
int height = getHeight();
// this.midlet = midlet;
Ticker ticker=new Ticker("B4 video controll init");
frm.setTicker(ticker);
//Canvas canvas = StyleSheet.currentScreen;
videoControl.initDisplayMode(VideoControl.USE_DIRECT_VIDEO,this);
ticker=new Ticker("after video controll init");
frm.setTicker(ticker);
try {
videoControl.setDisplayLocation(2, 2);
videoControl.setDisplaySize(width - 4, height - 4);
} catch (MediaException me) {}
videoControl.setVisible(true);
ticker=new Ticker("Device not supported");
frm.setTicker(ticker);
}
public void paint(Graphics g) {
int width = getWidth();
int height = getHeight();
g.setColor(0x00ff00);
g.drawRect(0, 0, width - 1, height - 1);
g.drawRect(1, 1, width - 3, height - 3);
}
}
В нормальном j2me выше код работает правильно. Но в j2me польский videoControl.initDisplayMode(VideoControl.USE_DIRECT_VIDEO,this)
здесь это относится к VideoCanvas (which extends from javax.microedition.lcdui.Canvas)
. Но он выбрасывает «IllegalArgumentException
- контейнер должен быть холстом». Как решить проблему?
Просьба предоставить инструкции импорта, используемые в _VideoCanvas.java_ - без них никто бы никогда не знал, используется ли 'Canvas' в выражении extends в качестве' javax.microedition.lcdui.Canvas' или какого-либо класса из другого пакета, который только что происходит с имеют то же имя – gnat
Привет. Я только отправлю свою часть кода. Я уже импортирую следующий «javax.microedition.lcdui.Canvas, javax.microedition.media.control.VideoControl». Но я забыл добавить в свой пост. Поэтому, пожалуйста, простите мои ошибки. Все могут дать ур ценные идеи. –
@ SIVAKUMAR.J Мне нужно открыть камеру для захвата изображения с помощью J2ME-лака, который может предложить мне, как переносить вперед. –