Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // importy
- import java.awt.*;
- import java.awt.event.*;
- import javax.swing.*;
- // main
- public class Aplikacja {
- public static void main(String[] args) {
- javax.swing.SwingUtilities.invokeLater(() -> {
- JFrame okno = new JFrame("Aplikacja");
- okno.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- okno.setContentPane(new ZdarzeniaMysz()); // okno.setContentPane(new ZdarzeniaKlawiatura());
- okno.setBounds(100, 50, 300, 150);
- okno.setVisible(true);
- });
- }
- }
- // mysz
- public class ZdarzeniaMysz extends JPanel {
- final int SREDNICA = 24;
- int koloX;
- int koloY;
- public ZdarzeniaMysz() {
- addMouseListener(new ObslugaMysz());
- }
- @Override
- public void paintComponent(Graphics g) {
- super.paintComponent(g);
- g.setColor(Color.RED);
- g.fillOval(koloX, koloY, SREDNICA, SREDNICA);
- }
- class ObslugaMysz implements MouseListener {
- @Override
- public void mousePressed(MouseEvent me) {
- }
- @Override
- public void mouseReleased(MouseEvent me) {
- }
- @Override
- public void mouseEntered(MouseEvent me) {
- }
- @Override
- public void mouseExited(MouseEvent me) {
- }
- @Override
- public void mouseClicked(MouseEvent me) {
- koloX = me.getX() - SREDNICA/2;
- koloY = me.getY() - SREDNICA/2;
- repaint();
- }
- }
- }
- // klawiatura
- public class ZdarzeniaKlawiatura extends JPanel {
- final int SREDNICA = 24;
- int koloX;
- int koloY;
- public ZdarzeniaKlawiatura() {
- setFocusable(true);
- addKeyListener(new ObslugaKlawiatura());
- }
- @Override
- public void paintComponent(Graphics g) {
- super.paintComponent(g);
- g.setColor(Color.RED);
- g.fillOval(koloX, koloY, SREDNICA, SREDNICA);
- }
- class ObslugaKlawiatura implements KeyListener {
- @Override
- public void keyReleased(KeyEvent ke) {
- }
- @Override
- public void keyTyped(KeyEvent ke) {
- }
- @Override
- public void keyPressed(KeyEvent ke) {
- switch(ke.getKeyCode()) {
- case KeyEvent.VK_DOWN: koloY += 5; break;
- case KeyEvent.VK_UP: koloY -= 5; break;
- case KeyEvent.VK_LEFT: koloX -= 5; break;
- case KeyEvent.VK_RIGHT: koloX += 5; break;
- }
- repaint();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement