امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
اشکال در لودImage
نویسنده پیام
leila5552 آفلاین
تازه وارد

ارسال‌ها: 14
موضوع‌ها: 1
تاریخ عضویت: مرداد ۱۳۸۶

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #1
اشکال در لودImage
سلام . من نمیتونم Image را در برنامه ام بار گذاری کنم. و پیغام قسمتcatch() را بهم نشون میده.
میشه بگید چه جوری باید عکسم را توی فایل jar ذخیره کنم؟ تا بتونم عکسم را در گوشی ببینم. ( من با NetBeans کار میکنم.)
ممنون .منتظر جوابتون هستم. Biggrin
۰۲-مرداد-۱۳۸۶, ۱۷:۲۷:۴۱
ارسال‌ها
پاسخ
ha_60 آفلاین
بنيانگذار سايت
******

ارسال‌ها: 4,637
موضوع‌ها: 216
تاریخ عضویت: آبان ۱۳۸۳

تشکرها : 560
( 6556 تشکر در 2385 ارسال )
ارسال: #2
 
توی همون بازی پرنس که کد هاش هست عکس هم لود کردیم شاید تو فولدر درست نریختی یا آدرس رو درست نمی ده یه نگاه بکن
چی شده خانوما به موبایل پروگرامینگ علاقه مند شدن؟

هادی امین زاده
دیدن چیزی که همه می بینند هنر نیست
بانک اطلاعات صنایع ایران.
۰۲-مرداد-۱۳۸۶, ۲۲:۳۳:۱۷
وب سایت ارسال‌ها
پاسخ
leila5552 آفلاین
تازه وارد

ارسال‌ها: 14
موضوع‌ها: 1
تاریخ عضویت: مرداد ۱۳۸۶

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #3
 
مرسی نگاه می کنم. کی میگه این کارا مخصوص آقایونه. پروژه پایانی من Mobile Programming هست. 8) عکس را باید توی پوشه خود برنامه بگذاریم درسته؟
۰۳-مرداد-۱۳۸۶, ۱۲:۲۴:۴۴
ارسال‌ها
پاسخ
ha_60 آفلاین
بنيانگذار سايت
******

ارسال‌ها: 4,637
موضوع‌ها: 216
تاریخ عضویت: آبان ۱۳۸۳

تشکرها : 560
( 6556 تشکر در 2385 ارسال )
ارسال: #4
 
اگه اشتباه نکنم عکس باید تو پوشه SRC باشه و آدرس هم به این شکل
کد:
Image image = Image.createImage("/sp2.png");

هادی امین زاده
دیدن چیزی که همه می بینند هنر نیست
بانک اطلاعات صنایع ایران.
۰۴-مرداد-۱۳۸۶, ۰۹:۲۷:۴۱
وب سایت ارسال‌ها
پاسخ
leila5552 آفلاین
تازه وارد

ارسال‌ها: 14
موضوع‌ها: 1
تاریخ عضویت: مرداد ۱۳۸۶

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #5
 
من همین کار را میکنم ولی عکسم را بهم نشون نمیده.

,"")ImageItem logo=new ImageItem

("",Image.createImage("/2.png"), ImageItem.LAYOUT_DEFAULT
من این دستور رو مینویسم مثل کتاب. ولی درست اجرا نمیشه عکس هم تو پوشه srcگذاشتم.
۰۴-مرداد-۱۳۸۶, ۲۰:۳۹:۵۹
ارسال‌ها
پاسخ
ha_60 آفلاین
بنيانگذار سايت
******

ارسال‌ها: 4,637
موضوع‌ها: 216
تاریخ عضویت: آبان ۱۳۸۳

تشکرها : 560
( 6556 تشکر در 2385 ارسال )
ارسال: #6
 
کدها که بهم ریخته برنامه رو یه جا upload کن تا ببینم مشکل کجاست
می خوای اون / رو هم بردار ببین بازم مشکل داره یا نه پکیج jar رو هم با winrar باز کن ببین عکس تو ش هست یا نه

هادی امین زاده
دیدن چیزی که همه می بینند هنر نیست
بانک اطلاعات صنایع ایران.
۰۵-مرداد-۱۳۸۶, ۰۹:۱۹:۴۹
وب سایت ارسال‌ها
پاسخ
leila5552 آفلاین
تازه وارد

ارسال‌ها: 14
موضوع‌ها: 1
تاریخ عضویت: مرداد ۱۳۸۶

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #7
 
/ را هم برداشتم هیچ فرقی نکرد.عکسم هم توی فایل jar بود. پیغام قسمت catch را میده. آیا ربطی به حجم عکس داره؟ عکس من 129 kb هست.
شما خودتئن این کار رو انجام دادید؟
کدم به این شکله :
کد:
mainform=new Form(" Show Image ");
        try{
            ImageItem logo=new ImageItem("My Picture", Image.createImage("1.png"), ImageItem.LAYOUT_DEFAULT ," Enjoy");
             mainform.append(logo);
        }
        catch (Exception  e){
            mainform.append(new StringItem("","Image Not available"+e));
            
        }
۰۵-مرداد-۱۳۸۶, ۱۱:۵۴:۵۷
ارسال‌ها
پاسخ
ha_60 آفلاین
بنيانگذار سايت
******

ارسال‌ها: 4,637
موضوع‌ها: 216
تاریخ عضویت: آبان ۱۳۸۳

تشکرها : 560
( 6556 تشکر در 2385 ارسال )
ارسال: #8
 
منظورم کد کامل بود که بشه خطا ها رو هم دید و درستش کرد
این کد تا 200k هم امتحان کردم مشکلی نداره اگه به حجم شک داری م یتونی یه فایل کوچکتر رو امتحان کنی چون موبایل می تونه بر اساس midp و ... حجم براش مهم باشه
کد:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class Midlet extends MIDlet {
    public void startApp() {
        javax.microedition.lcdui.Form mainform = new Form(" Show Image ");
        try{
            ImageItem logo=new ImageItem("My Picture", Image.createImage("/1.png"), ImageItem.LAYOUT_DEFAULT ," Enjoy");
             mainform.append(logo);
        }
        catch (Exception  e){
            mainform.append(new StringItem("","Image Not available -> "+e));
          
        }  
        javax.microedition.lcdui.Display.getDisplay(this).setCurrent(mainform);
    }
    
    public void pauseApp() {
    }
    
    public void destroyApp(boolean unconditional) {
    }
}

هادی امین زاده
دیدن چیزی که همه می بینند هنر نیست
بانک اطلاعات صنایع ایران.
۰۶-مرداد-۱۳۸۶, ۱۱:۱۶:۱۵
وب سایت ارسال‌ها
پاسخ
leila5552 آفلاین
تازه وارد

ارسال‌ها: 14
موضوع‌ها: 1
تاریخ عضویت: مرداد ۱۳۸۶

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #9
 
مشکلم حل شد. ممنون. به خاطر این بود که من پسوند عکسم را با حروف کوچک می نوشتم .
۰۶-مرداد-۱۳۸۶, ۱۱:۵۹:۵۰
ارسال‌ها
پاسخ
leila5552 آفلاین
تازه وارد

ارسال‌ها: 14
موضوع‌ها: 1
تاریخ عضویت: مرداد ۱۳۸۶

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #10
 
برنامه Sprite که از روی کتاب نوشتم هیچerror نداره ولی در emulator که باید Midlet را انتخاب کنیم تا باز شود هیچ اتفاقی نمی افتد. من فکر میکنم مشکل از sprite باشه .
کد:
/*
* SpriteMidlet.java
*
* Created on August 20, 2007, 9:24 AM
*/

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;

/**
*
* @author Leila
*/
  class ExampleGameCanvas extends GameCanvas implements Runnable {

    private boolean isPlay;
    private long delay;
    private int currentX,currentY;
    private int width,height;
    private Sprite sprite;
    private Sprite tempsprite;
    Image image;
    public ExampleGameCanvas() throws Exception {
        super(true);
        width=getWidth();
        height=getHeight();
        currentX=width/2;
        currentY=height/2;
        delay=20;
        //Load Images to sprite
        
        image=Image.createImage("/1.PNG" );
        Image temp=Image.createImage("/2.PNG");
        sprite=new Sprite(image, 32, 32);
        tempsprite=new Sprite(temp,32, 32);
    }
    //Automatically start thread for game loop
    public void start(){
        isPlay=true;
        Thread  t = new Thread(this);
        t.start();
    }
    public void stop(){
        isPlay=false;
    }
    public void run(){
        Graphics g=getGraphics();
        while(isPlay==true){
            input();
            drawScreen(g);
            try{
                Thread.sleep(delay);
            }
            catch(InterruptedException ie){}
        }
    }
    private void input(){
        int keyState=getKeyStates();
        sprite.setFrame(0);
        if((keyState & LEFT_PRESSED)!=0){
             currentX=Math.max(0,currentX-1);
             sprite.setFrame(1);
        }
         //right
         if((keyState & RIGHT_PRESSED)!=0)
             if(currentX+14<width){
                currentX=Math.min(width,currentX+1);
                sprite.setFrame(3);
         }
         //up
         if((keyState & UP_PRESSED)!=0){
             currentY=Math.max(0,currentY-1);
             sprite.setFrame(2);
         }
         //down
         if((keyState & DOWN_PRESSED)!=0)
             if(currentY+14<height){
                currentY=Math.min(height,currentY+1);
                sprite.setFrame(4);
             }
    }
    
    private void drawScreen(Graphics g){
         g.setColor(255, 0, 0);
         g.fillRect(0,0, getWidth(), getHeight());
         g.setColor(0,0, 255);
         //display sprites
         sprite.setPosition(currentX, currentY);
         sprite.setFrame(0);
         sprite.setVisible(true);
         sprite.paint(g);
         tempsprite.paint(g);
         flushGraphics();
    }
  
}
public class SpriteMidlet extends MIDlet {
    Display display;
    
    
    /** Creates a new instance of SpriteMidlet */
    public SpriteMidlet() {
    }
    
// --- This section is auto-generated by NetBeans IDE. Do not modify or you may lose your changes.//<editor-fold id="MVDMethods" defaultstate="collapsed" desc="This section is auto-generated by NetBeans IDE.">                      
    /**
     * This method initializes UI of the application.
     */
    private void initialize() {
    }
    
// --- This is the end of auto-generated section.//</editor-fold>                    
    
    public void startApp() {
        try{
          
            display = Display.getDisplay(this);
            ExampleGameCanvas gameCanvas = new ExampleGameCanvas();
            gameCanvas.start();
            display.setCurrent(gameCanvas);
        }
        catch(Exception ex){
            System.out.println(ex);
        }
    }
    
    
    public void pauseApp() {
    }
    
    public void destroyApp(boolean unconditional) {
        notifyDestroyed();
    }
    
}
این کد کامل برنامه منه. میشه بگید مشکلش چیه؟
۰۸-مرداد-۱۳۸۶, ۲۱:۲۲:۵۹
ارسال‌ها
پاسخ
ha_60 آفلاین
بنيانگذار سايت
******

ارسال‌ها: 4,637
موضوع‌ها: 216
تاریخ عضویت: آبان ۱۳۸۳

تشکرها : 560
( 6556 تشکر در 2385 ارسال )
ارسال: #11
 
اگه برنامه Prince رو می گی که کاملش توی CD همراه کتاب هست کمپایل هم شده کار هم می کنه می تونی اول اون رو امتحان کنی شاید اشتباه تایپی یا چیز دیگه ای باشه

هادی امین زاده
دیدن چیزی که همه می بینند هنر نیست
بانک اطلاعات صنایع ایران.
۰۹-مرداد-۱۳۸۶, ۱۲:۰۰:۰۹
وب سایت ارسال‌ها
پاسخ


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 5 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS