На основе класса Thread, окно должно само двигаться по экрану - Java
Формулировка задачи:
Создать программу на языке JAVA. На основе класса Thread, окно должно само двигаться по экрану.
Решение задачи: «На основе класса Thread, окно должно само двигаться по экрану»
textual
Листинг программы
- import javax.swing.*;
- import java.awt.*;
- import java.awt.event.MouseAdapter;
- import java.awt.event.MouseEvent;
- public class React extends JFrame implements Runnable {
- private int vecX = 1, vecY = 1;
- private boolean pause = false;
- {
- setSize(300, 250);
- setLocationRelativeTo(null);
- setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
- setVisible(true);
- addMouseListener(new MouseAdapter() {
- @Override
- public void mousePressed(MouseEvent e) {
- pause = !pause;
- }
- });
- }
- public static void main(String[] args) throws AWTException {
- React frame = new React();
- Thread thread = new Thread(frame);
- thread.start();
- }
- @Override
- public void run() {
- int x, y;
- Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
- while (true) {
- try {
- Thread.sleep(5);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- if (pause) continue;
- x = getX() + vecX;
- y = getY() + vecY;
- if (d.width <= x + getWidth() || x <= 0) vecX = -vecX;
- if (d.height <= y + getHeight() || y <= 0) vecY = -vecY;
- setLocation(x, y);
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д