Форум программистов, компьютерный форум, киберфорум
Java: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/18: Рейтинг темы: голосов - 18, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 6

Applet. Произвольное движение кружка

30.04.2012, 17:05. Показов 3729. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Сделать так, чтобы круг двигался по апплету произвольно. Т.е. ударяется об стенку и двигается. Помогите, пожалуйста. Нашел исходник, только там 380 строк и слишком сложно. Мне бы полегче... спасибо!
Оригинал
sdelat' tak 4tob krug dvigalsia po appletu proizvol'no! to est' udariaietsia ob stenku i dvigaetsia! help me pls! nawel ishodnik tol'ko tam 380 strok i sli2kom slojno! mne by poleg4e... spasibo!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.04.2012, 17:05
Ответы с готовыми решениями:

Движение текста без использования потоков - Applet
Здраствуйте,хочу чтобы текст без использовние потоков двигался.У меня вроде получилось.Но как сделать чтобы текст пропадал ,а то он...

Движение кружка на синусоиде
Здравствуйте. Помогите решить проблему. Задание такое: нарисовать синусоиду и через таймер показать движение шарика. Он должен как бы...

Произвольное движение объекта
Всем доброго времени суток. У меня танк который моет на месте крутится и при этом он должен ехать в перед и назад в зависимости от того...

8
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
30.04.2012, 20:47
Если полегче и покороче, то вот import java.applet.Applet;
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
import java.applet.Applet;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Point;
 
/**
 * The Class Main.
 * 
 * Created on: 30.04.2012
 * 
 * @author: M128K145
 */
public class Main extends Applet {
 
   /** The Constant serialVersionUID. */
   private static final long serialVersionUID = -3520072509554688891L;
 
   /** The width. */
   private int width;
 
   /** The height. */
   private int height;
 
   /** The location. */
   private Point location = new Point(0, 0);
 
   /** The size. */
   private int size = 10;
 
   /** The direction. */
   private int direction = 3;
 
   /**
    * Inits the.
    * 
    * @see java.applet.Applet#init()
    */
   public void init() {
      width = getSize().width;
      height = getSize().height;
      setBackground(Color.LIGHT_GRAY);
   }
 
   /**
    * Paint.
    * 
    * @param g
    *           the g
    * @see java.awt.Container#paint(java.awt.Graphics)
    */
   public void paint(Graphics g) {
      g.setColor(Color.BLACK);
      if (location.x == 0) {
         direction ^= 1;
         ++location.x;
      } else if (location.x + size == width) {
         direction ^= 1;
         --location.x;
      } else if (location.x + size < width && (direction & 1) == 1) {
         ++location.x;
      } else if (location.x + size < width && (direction & 1) != 1) {
         --location.x;
      }
 
      if (location.y == 0) {
         direction ^= 2;
         ++location.y;
      } else if (location.y + size == height) {
         direction ^= 2;
         --location.y;
      } else if (location.y + size < height && (direction >> 1 & 1) == 1) {
         ++location.y;
      } else if (location.y + size < height && (direction >> 1 & 1) != 1) {
         --location.y;
      }
      g.drawOval(location.x, location.y, size, size);
      try {
         Thread.sleep(10);
      } catch (InterruptedException e) {
         e.printStackTrace();
      }
 
      this.repaint();
   }
 
}
HTML5
1
2
3
4
5
<html>
    <body>
        <applet code=Main.class width=640" height="480" />
    </body>
</html>
0
0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 6
01.05.2012, 11:42  [ТС]
M128K145, private static final long serialVersionUID = -3520072509554688891L; как это понимать? и вообще, что-то программа не работает... извините, если не понял ваш проект....

M128K145, если ты закидываешь исходник в проект оно сразу работает? у меня ошибки выводит...

Оригинал
M128K145, private static final long serialVersionUID = -3520072509554688891L; kak eto ponimat'? i voobwe 4to to proga ne rabotaet... osrry esli ne ponial vaw proect....

Добавлено через 6 минут
M128K145, esli ty zakidyvaew' ishodnik v proekt ono srazu rabotaet? u menia owibki yvodit..
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
01.05.2012, 12:02
Цитата Сообщение от kiriama_kun Посмотреть сообщение
как это понимать?
Это уникальная айдиха класса для сериализации.

Цитата Сообщение от kiriama_kun Посмотреть сообщение
и вообще, что-то программа не работает..
В чем это выражается, как компилируете и запускаете?

Цитата Сообщение от kiriama_kun Посмотреть сообщение
если ты закидываешь исходник в проект оно сразу работает?
Что вы понимаете под исходником и куда его забрасывать?
У меня все работает
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
~/javatest$ java -version
java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01, mixed mode)
~/javatest$ cat Main.java
import java.applet.Applet;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Point;
 
/**
 * The Class Main.
 * 
 * Created on: 30.04.2012
 * 
 * @author: M128K145
 */
public class Main extends Applet {
 
   /** The Constant serialVersionUID. */
   private static final long serialVersionUID = -3520072509554688891L;
 
   /** The width. */
   private int width;
 
   /** The height. */
   private int height;
 
   /** The location. */
   private Point location = new Point(0, 0);
 
   /** The size. */
   private int size = 10;
 
   /** The direction. */
   private int direction = 3;
 
   /**
    * Inits the.
    * 
    * @see java.applet.Applet#init()
    */
   public void init() {
      width = getSize().width;
      height = getSize().height;
      setBackground(Color.LIGHT_GRAY);
   }
 
   /**
    * Paint.
    * 
    * @param g
    *           the g
    * @see java.awt.Container#paint(java.awt.Graphics)
    */
   public void paint(Graphics g) {
      g.setColor(Color.BLACK);
      if (location.x == 0) {
         direction ^= 1;
         ++location.x;
      } else if (location.x + size == width) {
         direction ^= 1;
         --location.x;
      } else if (location.x + size < width && (direction & 1) == 1) {
         ++location.x;
      } else if (location.x + size < width && (direction & 1) != 1) {
         --location.x;
      }
 
      if (location.y == 0) {
         direction ^= 2;
         ++location.y;
      } else if (location.y + size == height) {
         direction ^= 2;
         --location.y;
      } else if (location.y + size < height && (direction >> 1 & 1) == 1) {
         ++location.y;
      } else if (location.y + size < height && (direction >> 1 & 1) != 1) {
         --location.y;
      }
      g.drawOval(location.x, location.y, size, size);
      try {
         Thread.sleep(10);
      } catch (InterruptedException e) {
         e.printStackTrace();
      }
 
      this.repaint();
   }
 
}
~/javatest$ cat Main.html
<html>
    <body>
        <applet code=Main.class width=640" height="480" />
    </body>
</html>
~/javatest$ javac Main.java
~/javatest$ /opt/google/chrome/chrome Main.html
0
0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 6
01.05.2012, 12:14  [ТС]
M128K145, это ты в нетбинсе работаешь? извини канеш за тупой вопрос...

Добавлено через 1 минуту
M128K145, на нетбинс как бы не похож...
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
01.05.2012, 12:55
Вот нетбинс
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
/*
 * Main.java
 *
 * Created on 01.05.2012, 11:48:42
 */
package applet;
 
import java.applet.Applet;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Point;
 
/**
 *
 * @author M128K145
 */
public class Main extends Applet {
 
    /** The width. */
    private int width;
    /** The height. */
    private int height;
    /** The location. */
    private Point location = new Point(0, 0);
    /** The size. */
    private int size = 10;
    /** The direction. */
    private int direction = 3;
 
    /** Initializes the applet Main */
    public void init() {
        width = getSize().width;
        height = getSize().height;
        setBackground(Color.LIGHT_GRAY);
        try {
            java.awt.EventQueue.invokeAndWait(new Runnable() {
 
                public void run() {
                    initComponents();
                }
            });
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
 
    /**
     * Paint.
     * 
     * @param g
     *           the g
     * @see java.awt.Container#paint(java.awt.Graphics)
     */
    public void paint(Graphics g) {
        g.setColor(Color.BLACK);
        if (location.x == 0) {
            direction ^= 1;
            ++location.x;
        } else if (location.x + size == width) {
            direction ^= 1;
            --location.x;
        } else if (location.x + size < width && (direction & 1) == 1) {
            ++location.x;
        } else if (location.x + size < width && (direction & 1) != 1) {
            --location.x;
        }
 
        if (location.y == 0) {
            direction ^= 2;
            ++location.y;
        } else if (location.y + size == height) {
            direction ^= 2;
            --location.y;
        } else if (location.y + size < height && (direction >> 1 & 1) == 1) {
            ++location.y;
        } else if (location.y + size < height && (direction >> 1 & 1) != 1) {
            --location.y;
        }
        g.drawOval(location.x, location.y, size, size);
        try {
            Thread.sleep(10);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
 
        this.repaint();
    }
 
    /** This method is called from within the init() method to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    // <editor-fold defaultstate="collapsed" desc="Generated Code">
    private void initComponents() {
 
        setLayout(new java.awt.BorderLayout());
    }// </editor-fold>
    // Variables declaration - do not modify
    // End of variables declaration
}
0
0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 6
01.05.2012, 13:06  [ТС]
M128K145, у меня ошибку выдает требует.... так будет понятней Error: Main method not found in class javaapplication22.JavaApplication22, please define the main method as:
public static void main(String[] args) короче требует главный метод! как исправить? спасибо!

Добавлено через 22 секунды
M128K145, буду безгранично благодарен
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
01.05.2012, 13:14
kiriama_kun, правой кнопкой по файлу - компилировать файл, потом так же правой кнопкой - выполнить файл
0
0 / 0 / 0
Регистрация: 09.10.2011
Сообщений: 6
01.05.2012, 13:23  [ТС]
M128K145, все большое спасибо! Удачи в делах!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.05.2012, 13:23
Помогаю со студенческими работами здесь

Как симулировать произвольное движение курсора?
Здравствуйте. Необходимо решить задачу произвольного движения курсора по экрану. Кто уже встречался с таким, помогите с решением!

Изобразить произвольное движение точки, меняющей свой цвет
произвольное движение точки,меняющая свой цвет(на паскале)

Сделать произвольное движение объекта и отскакивание его от стен
Подскажите, как сделать произвольное движение объекта (небольшой прямоугольник) и отскакивание его от стен. На форуме не нашел...

Создать каталог, скопировать произвольное количество файлов, вывести произвольное сообщение на экран
1. Создать новый каталог, имя которого задано параметром командного файла. 2. Скопировать в созданный каталог произвольное количество...

Иконка телеграмм без кружка
Доброго времени суток дамы и господа! Многие из вас, как и я, пользуются иконочными шрифтами и вставляют на странички иконки соцсетей...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru