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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> thread's 
:(
    Опции темы
Gobbs
Дата 4.9.2006, 01:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Вощем, начал я тут разбираться с тредами-так всё и не понял-помогите, пожалуйста, разобраться. smile 
Прога должна поочерёдно менять картинки 1.png...5.png. Но, по-ходу, я что-то напутал с организации потока и он вообще не выполняется.
Спасибо!
Код

class main extends Canvas implements Runnable{
  
  public Image a[]=new Image[6];
  public Thread thread=new Thread(this);
  public boolean b[]=new boolean[6];{b[0]=false;b[1]=false;b[2]=false;b[3]=false;b[4]=false;b[5]=false;}
  public int i=1;
  public boolean mainb=true;

  

 public void run(){
  while(mainb){
    if(i==6)i=1;
    for(int k=1;k<=5;k++)b[k]=false;
      b[i]=true;
      try{
       thread.sleep(1000);
      }catch(InterruptedException e){}
    i++;
  }
    System.out.println("выполнился");repaint();
  }
{thread.start();}
  

  public void paint(Graphics g){
    for (int k = 1; k <= 5; k++)
      if (b[k]) g.drawImage(a[k], 0, 0, g.LEFT | g.TOP);
     

  }




}


public class skill extends MIDlet {
  public boolean music=true;
  public boolean mainb=true;
    public Display display;
  public Image a[]=new Image[6];
  public Thread thread;
  static skill instance;
  Displayable1 displayable = new Displayable1();
  public skill() {
    instance = this;
  }

  public void startApp() {
    Display.getDisplay(this).setCurrent(displayable);
    try{
       a[1]=Image.createImage("/1.png");
      a[2]=Image.createImage("/2.png");
      a[3]=Image.createImage("/3.png");
      a[4]=Image.createImage("/4.png");
      a[5]=Image.createImage("/5.png");
    }catch(IOException e){System.out.println(e.getMessage());}

    main M=new main();

   M.mainb=mainb;
  
   
   
   M.setFullScreenMode(true);

for(int k=1;k<=5;k++)M.a[k]=a[k];

display=Display.getDisplay(this);

 /* Runnable r=new main();
  new Thread(r).start();*/      //  -----можно ли поток этот запустить отсюда???
display.setCurrent(M);
  }

  public void pauseApp() {
  }

  public void destroyApp(boolean unconditional) {
  }

  public static void quitApp() {
    instance.destroyApp(true);
    instance.notifyDestroyed();
    instance = null;
  }

}



Это сообщение отредактировал(а) Gobbs - 4.9.2006, 01:45
PM MAIL   Вверх
604
Дата 4.9.2006, 08:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Gobbs, 
ЧТо то не понятно где ваш поток запускается?
Сделайте что ли конструктор для класса main, там и запускайте.
Например так, добавте конструктор в класс main
Код

public main()
{
   thread.start();
}

PM MAIL   Вверх
Gobbs
Дата 4.9.2006, 09:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(604 @ 4.9.2006,  08:52)
Gobbs, 
ЧТо то не понятно где ваш поток запускается?
Сделайте что ли конструктор для класса main, там и запускайте.
Например так, добавте конструктор в класс main
Код

public main()
{
   thread.start();
}

Вроде как на 23-ей строке есть это smile 
PM MAIL   Вверх
javastic
Дата 4.9.2006, 10:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1214
Регистрация: 18.3.2005
Где: St.Petersburg

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



На 23-й строке ничего не запуститься. 

Цитата

 /* Runnable r=new main();
  new Thread( r ).start();*/      //  -----можно ли поток этот запустить отсюда???


Можно, только вот кто такой r не понятно.

Это сообщение отредактировал(а) javastic - 4.9.2006, 10:10


--------------------
01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011
scjp, mcp 
PM MAIL WWW ICQ   Вверх
Gobbs
Дата 4.9.2006, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Как запустить? Дайте плиз варианты. То,что предлагал 604, я попробовал прописать в классе main-тот же результат.
PM MAIL   Вверх
javastic
Дата 4.9.2006, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1214
Регистрация: 18.3.2005
Где: St.Petersburg

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



в кратце:

Код

class A implements Runnable  {

  void run() {

  }

}


class midlet extends MIDlet {

  A a;
  Thread t;

  public void startApp() {
    a = new A();
    t = new Thread(a);
    t.start();    
  }

}



--------------------
01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011
scjp, mcp 
PM MAIL WWW ICQ   Вверх
604
Дата 4.9.2006, 10:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Gobbs, Дибавили, и не заработало?:-)
PM MAIL   Вверх
Gobbs
Дата 4.9.2006, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Спасибо javastic! Долго бы без тебя мучился!  smile 
Жаль не могу рептацию тебе сделать "+" постов мало.  smile

Добавлено @ 10:53 
Цитата(604 @ 4.9.2006,  10:40)
Gobbs, Дибавили, и не заработало?:-)

Заработало. Я не так проверял на работоспособность  smile 
PM MAIL   Вверх
604
Дата 4.9.2006, 10:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Gobbs, Бывает  smile 
PM MAIL   Вверх
javastic
Дата 4.9.2006, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1214
Регистрация: 18.3.2005
Где: St.Petersburg

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



Gobbs, не за что. smile


--------------------
01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011
scjp, mcp 
PM MAIL WWW ICQ   Вверх
LSD
Дата 4.9.2006, 11:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

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



Цитата(Gobbs @  4.9.2006,  11:52 Найти цитируемый пост)
Жаль не могу рептацию тебе сделать "+" постов мало.

По многочисленным просьбам трудящихся... smile


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

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

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


 




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


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

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