⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 camerademo.java

📁 j2me源代码
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
        }        if(snpCtrl != null) {                        new Thread() {                public void run() {                    snpCtrl.start(maxShots);                    if(maxShots != snpCtrl.FREEZE_AND_CONFIRM) {                        vidForm.append("Picture has been saved to disk");                        savedMessageAppear = true;                    }                }            }.start();            if (maxShots == -1) {                if (snapForm == null) {                    snapForm = new Form("Do you want to save the picture ?");                                         snapForm.addCommand(saveSnapCommand);                    snapForm.addCommand(deleteSnapCommand);                    snapForm.setCommandListener(this);                }                vidForm.deleteAll();                snapForm.append(videoItem);                display.setCurrent(snapForm);            }         }    }        private void doSnapshot() {        new Thread() {            public void run() {                try {                    byte [] snap = vidCtrl.getSnapshot("encoding=jpeg");                    if (snap != null) {                        Image im = Image.createImage(snap, 0, snap.length);                        ImageItem imi = new ImageItem("", im, Item.	PLAIN, "");                                                vidForm.append(imi);                    }                } catch (MediaException me) {                    System.err.println(me);                }            }        }.start();    }        private void enabledShutterFeedback(boolean enabledFeedback) {            final boolean bool = enabledFeedback;            new Thread(new Runnable() {                public void run() {                    try {                        camCtrl.enableShutterFeedback(bool);                    } catch (Exception me) {                        return;                    }                 }            }).start();                        if (enabledFeedback) {                vidForm.removeCommand(enabledShutterFeedbackCommand);                vidForm.addCommand(disabledShutterFeedbackCommand);            } else {                vidForm.removeCommand(disabledShutterFeedbackCommand);                vidForm.addCommand(enabledShutterFeedbackCommand);            }    }        private void setExposureModes() {        try {            if (exposureModesForm == null) {                exposureModesForm = new Form("Select exposure modes:");                exposureModes = new ChoiceGroup(null,                                            Choice.EXCLUSIVE,                                            camCtrl.getSupportedExposureModes(),                                            null);                exposureModesForm.append(exposureModes);                exposureModesForm.setItemStateListener(this);                exposureModesForm.addCommand(backCommand);                exposureModesForm.setCommandListener(this);            }            display.setCurrent(exposureModesForm);        } catch (Exception e) {            e.printStackTrace();        }                }        private void setSupportedF_Stops() {        try {            if (supportedF_StopsForm == null) {                supportedF_StopsForm = new Form("Select F_Stop number:");                int fpIntArray[] = expCtrl.getSupportedFStops();                String[] fpStops = new String[fpIntArray.length];                for (int i = 0; i < fpIntArray.length; i++) {                    fpStops[i] = Integer.toString(fpIntArray[i]);                }                F_StopsCG = new ChoiceGroup(null,                                            Choice.EXCLUSIVE,                                            fpStops,                                            null);                supportedF_StopsForm.append(F_StopsCG);                supportedF_StopsForm.setItemStateListener(this);                supportedF_StopsForm.addCommand(backCommand);                supportedF_StopsForm.setCommandListener(this);            }            display.setCurrent(supportedF_StopsForm);        } catch (Exception e) {            e.printStackTrace();        }                }        private void setFlashMode() {        try {            if (flashModesForm == null) {                flashModesForm = new Form("Select flash mode:");                int flashIntArray[] = flsCtrl.getSupportedModes();                                String flashSupportedModes[] = new String[flashIntArray.length];                for (int i = 0; i < flashIntArray.length; i++) {                    flashSupportedModes[i] = flashAllModes[i];                }                int initialMode = flsCtrl.getMode();                flashModes = new ChoiceGroup(null,                                             Choice.EXCLUSIVE,                                             flashSupportedModes,                                             null);                flashModes.setSelectedIndex((initialMode - 1), true);                flashModesForm.append(flashModes);                flashModesForm.setItemStateListener(this);                flashModesForm.addCommand(backCommand);                flashModesForm.setCommandListener(this);            }            display.setCurrent(flashModesForm);        } catch (Exception e) {            e.printStackTrace();        }                            }        private void focusSetting() {        try {            if (focusModesForm == null) {                focusModesForm = new Form("Select focus mode:");                                focusSupportedModes = new String[fcsCtrl.getFocusSteps() + 1];                focusModesInt = new int[focusSupportedModes.length];                focusSupportedModes[0] = "Auto Mode";                focusModesInt[0] = fcsCtrl.AUTO;                fcsCtrl.setFocus(fcsCtrl.getMinFocus());                for (int i = 1; i < focusSupportedModes.length; i++) {                    focusModesInt[i] = fcsCtrl.getFocus();                    focusSupportedModes[i] = Integer.toString(focusModesInt[i]);                    fcsCtrl.setFocus(fcsCtrl.NEXT);                }                if(focusModesInt[focusModesInt.length - 1] == Integer.MAX_VALUE) {                    focusSupportedModes[focusModesInt.length - 1] = "infinity";                }                fcsCtrl.setFocus(fcsCtrl.AUTO);                int initialMode = flsCtrl.getMode();                focusModes = new ChoiceGroup(null,                                             Choice.EXCLUSIVE,                                             focusSupportedModes,                                             null);                                                             focusModes.setSelectedIndex(0, true);                focusModesForm.append(focusModes);                focusModesForm.setItemStateListener(this);                focusModesForm.addCommand(backCommand);                focusModesForm.setCommandListener(this);            }            display.setCurrent(focusModesForm);        } catch (Exception e) {            e.printStackTrace();        }    }        private void zoomSetting() {        try {            if (zoomModesForm == null) {                zoomModesForm = new Form("Select zoom mode:");                  //Digital zoom                zoomDigSupportedModes = new String[zomCtrl.getDigitalZoomLevels()];                zoomDigModesInt = new int[zoomDigSupportedModes.length];                zomCtrl.setDigitalZoom(100);                for (int i = 0; i < zoomDigSupportedModes.length; i++) {                                        zoomDigModesInt[i] = zomCtrl.getDigitalZoom();                    zoomDigSupportedModes[i] = Integer.toString(zoomDigModesInt[i]);                    zomCtrl.setDigitalZoom(zomCtrl.NEXT);                }                                zoomDigModes = new ChoiceGroup(null,                                             Choice.EXCLUSIVE,                                             zoomDigSupportedModes,                                             null);                                                             zoomDigModes.setSelectedIndex(0, true);                zoomModesForm.append("Set digital zoom");                zoomModesForm.append(zoomDigModes);                //Optical zoom                zoomOptSupportedModes = new String[zomCtrl.getOpticalZoomLevels()];                zoomOptModesInt = new int[zoomOptSupportedModes.length];                zomCtrl.setOpticalZoom(100);                for (int i = 0; i < zoomOptSupportedModes.length; i++) {                                        zoomOptModesInt[i] = zomCtrl.getOpticalZoom();                    zoomOptSupportedModes[i] = Integer.toString(zoomOptModesInt[i]);                    zomCtrl.setOpticalZoom(zomCtrl.NEXT);                }                                zoomOptModes = new ChoiceGroup(null,                                             Choice.EXCLUSIVE,                                             zoomOptSupportedModes,                                             null);                                                             zoomOptModes.setSelectedIndex(0, true);                zoomModesForm.append("Set optical zoom");                zoomModesForm.append(zoomOptModes);                zoomModesForm.setItemStateListener(this);                zoomModesForm.addCommand(backCommand);                zoomModesForm.setCommandListener(this);            }            display.setCurrent(zoomModesForm);        } catch (Exception e) {            e.printStackTrace();        }    }        private void setSnapshotSettings() {        try {            if (snapshotSettingsForm == null) {                snapshotSettingsForm = new Form("Set the snapshot setting:");                snapshotSettingsForm.addCommand(backCommand);                snapSetDisOrSave = new ChoiceGroup("Display or save", ChoiceGroup.POPUP, snapSetOption, null);                snapshotSettingsForm.setItemStateListener(this);                snapshotSettingsForm.setCommandListener(this);                snapSetDisOrSave.setSelectedIndex(1, true);                burstNum = new TextField("Number of picture", "1", 3, TextField.NUMERIC);                snapSetFreezeOrConfirm = new ChoiceGroup("Freeze option", ChoiceGroup.POPUP, snapSetFreezeOption, null);                snapSetFreezeOrConfirm.setSelectedIndex(0, true);                snapshotSettingsForm.append(snapSetDisOrSave);                snapshotSettingsForm.append(snapSetFreezeOrConfirm);                NumOfPic = -2;            }            display.setCurrent(snapshotSettingsForm);        } catch (Exception e) {            e.printStackTrace();        }    }    private void closePlayer() {        if (player != null) {            player.close();            player = null;        }    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -