Форум программистов, компьютерный форум, киберфорум
Java: GUI, графика
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
1 / 1 / 4
Регистрация: 23.08.2015
Сообщений: 458
1

Старт анимации не при старте программы, а при нажатии кнопки

27.05.2017, 13:39. Показов 1483. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет, как можно переделать нижеприведённый код чтобы анимация срабатывала не при старте программы а при нажатии кнопки?
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
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
public class JavaApplication12 {
    JButton button;
    JFrame frame;
    int x = 70;
    int y = 70;
    
    
    public static void main(String[] args) {
        JavaApplication12 gui = new JavaApplication12();
        gui.go();
    }
    
    
    
    class MyDrawPanel extends JPanel  { 
    @Override
    public void paintComponent(Graphics g){
        g.setColor(Color.white); 
        g.fillRect(0,0, this.getWidth(), this.getHeight());
        
        g.setColor(Color.green); 
        g.fillOval(x,y,40,40) ; 
        
        
    }       
 
    }
 
 
    public void go(){
        frame = new JFrame();
        
        MyDrawPanel drawPanel = new MyDrawPanel(); 
        frame.getContentPane().add(drawPanel);
 
        frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
 
        frame.setSize(300,300);
        frame.setVisible(true);
        
        for(int i=0; i<130; i++){
            x++;
            y++;
            
            drawPanel.repaint();
            try{
                Thread.sleep(50);
            }catch(Exception ex){ }
        }
    }
 
 
}
Покажите как это можно сделать?

Добавлено через 25 минут
У меня вот что получилось но это определённо не то!
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
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
 
public class JavaApplication12 {
    JButton button;
    JFrame frame;
    int x = 70;
    int y = 70;
    
    
    public static void main(String[] args) {
        JavaApplication12 gui = new JavaApplication12();
        gui.go();
    }
    
    
    
    class MyDrawPanel extends JPanel implements ActionListener { 
    @Override
    public void paintComponent(Graphics g){
        g.setColor(Color.white); 
        g.fillRect(0,0, this.getWidth(), this.getHeight());
        
        g.setColor(Color.green); 
        g.fillOval(x,y,40,40) ; 
 
    }
      
    
    @Override
    public void actionPerformed(ActionEvent e) {
        for(int i=0; i<130; i++){
            x++;
            y++;
            
            this.repaint();
            try{
                Thread.sleep(50);
            }catch(Exception ex){ }
        }
        
    }
    
    
        
 
    }
 
 
    public void go(){
        frame = new JFrame();
     
        button = new JButton("Click me");
        
        MyDrawPanel drawPanel = new MyDrawPanel(); 
        frame.getContentPane().add(drawPanel);
        button.addActionListener(drawPanel);
        
        frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        frame.getContentPane().add(button, BorderLayout.SOUTH);
 
        frame.setSize(300,300);
        frame.setVisible(true);
        
        }
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.05.2017, 13:39
Ответы с готовыми решениями:

Начало игры при нажатии кнопки старт
Нужно сделать при нажатии на начать игру чтоб начинался игровой процесс. Кнопки которые...

При нажатии кнопки увеличивать скорость вращения анимации (вентилятор)
Помогите сделать так, что бы при нажатии кнопки, вентилятор ускорялся. Не знаю как с этой кнопкой...

СМА LG F8068LD1, Выбираются все программы при нажатии старт не стартует
Все питание в норме, все звонится, все светодиоды звонятся, по дидам связанным с кнопкой нет...

Как отследить удерживание кнопки при старте программы?
Например хочу чтобы при нажатой Volume UP и запуске моего приложения чтото происходило. Все...

2
77 / 77 / 77
Регистрация: 29.01.2017
Сообщений: 167
27.05.2017, 16:48 2
прочитай про многопоточное программирование в java
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Override                                   
public void actionPerformed(ActionEvent e) {
    new Thread(() -> {                      
        for (int i = 0; i < 130; i++) {     
            x++;                            
            y++;                            
                                            
            this.repaint();                 
            try {                           
                Thread.sleep(50);           
            } catch (Exception ex) {        
            }                               
        }                                   
    }).start();                             
}
1
1 / 1 / 4
Регистрация: 23.08.2015
Сообщений: 458
27.05.2017, 16:57  [ТС] 3
Kadota,
Спасибо большое за код!
Обязательно прочту!
0
27.05.2017, 16:57
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.05.2017, 16:57
Помогаю со студенческими работами здесь

Как при нажатии "Старт" перемешать кнопки?
Вот код игры &quot;пятнашки&quot;. Когда нажимаешь на кнопку &quot;старт&quot;, кнопки с цифрами остаются на своих...

Старт анимации при скролле
доброго времени суток! хочу понять как можно реализовать старт анимации при прокрутке до него, вот...

Старт анимации при скролинге
Друзья подскажите пожалуйста есть css .box1verh{ animation: animationFrames ease 2s; ...

Старт и стоп анимации при повторных кликах
всем привет! использую плагин jqueryrotate не могу сделать так, чтобы при первом клике на объект...

Зависание программы при нажатии кнопки
Доброго времени суток, господа и дамы. Есть вот такой вот код на делфи unit Unit1; interface ...

Зависание программы при нажатии кнопки
//--------------------------------------------------------------------------- #include &lt;vcl.h&gt;...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru