Advertisement
Guest User

Untitled

a guest
Mar 22nd, 2019
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.75 KB | None | 0 0
  1. /*
  2. * To change this license header, choose License Headers in Project Properties.
  3. * To change this template file, choose Tools | Templates
  4. * and open the template in the editor.
  5. */
  6. import java.awt.Color;
  7. import java.awt.Graphics;
  8. import java.awt.Graphics2D;
  9. import java.awt.event.MouseEvent;
  10. import java.awt.event.MouseListener;
  11. import java.awt.geom.Line2D;
  12.  
  13. import javax.swing.JPanel;
  14. import javax.swing.JFrame;
  15.  
  16. /**
  17. *
  18. * @author htrefftz
  19. */
  20. public class EventoMouse
  21. extends JPanel
  22. implements MouseListener {
  23.  
  24.  
  25. int C1x = 150;
  26. int C1y = 150;
  27. int C2x = 100;
  28. int C2y = 100;
  29. boolean C1s = false;
  30. boolean C2s = false;
  31.  
  32. public EventoMouse() {
  33. this.addMouseListener(this);
  34. }
  35.  
  36. @Override
  37. public void paint(Graphics g) {
  38. super.paint(g);
  39. g.setColor(Color.BLUE);
  40. if (C1s || C2s) g.drawString("Selected", 5, 11); else g.drawString("Not selected", 5, 11);
  41. g.setColor(Color.BLUE);
  42. g.fillOval(C1x - 30, C1y - 30, 60, 60);
  43. g.setColor(Color.GREEN);
  44. g.fillOval(C2x - 30, C2y - 30, 60, 60);
  45. }
  46.  
  47.  
  48. @Override
  49. public void mouseClicked(MouseEvent e) {
  50. if (!C1s && !C2s)
  51. {
  52. int distanceToCircle1 = (int)Math.sqrt((e.getX() - C1x)*(e.getX() - C1x)+(e.getY() - C1y)*(e.getY() - C1y));
  53. int distanceToCircle2 = (int)Math.sqrt((e.getX() - C2x)*(e.getX() - C2x)+(e.getY() - C2y)*(e.getY() - C2y));
  54. C1s = (distanceToCircle1 < 30);
  55. C2s = (distanceToCircle2 < 30);
  56. System.out.println(distanceToCircle1);
  57. repaint();
  58. }
  59. else
  60. {
  61. if (C1s)
  62. {
  63. C1x = e.getX();
  64. C1y = e.getY();
  65. } else if (C2s)
  66. {
  67. C2x = e.getX();
  68. C2y = e.getY();
  69. }
  70. C1s = false;
  71. C2s = false;
  72. repaint();
  73. }
  74. }
  75.  
  76. @Override
  77. public void mouseEntered(MouseEvent e) {}
  78.  
  79. @Override
  80. public void mouseExited(MouseEvent e) {}
  81.  
  82. @Override
  83. public void mousePressed(MouseEvent e) {
  84. }
  85.  
  86. @Override
  87. public void mouseReleased(MouseEvent e) {
  88.  
  89. }
  90.  
  91. public static void main(String[] args) {
  92. // Crear un nuevo Frame
  93. JFrame frame = new JFrame("Eventos del Mouse");
  94. // Al cerrar el frame, termina la ejecución de este programa
  95. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  96. // Agregar un JPanel que se llama Points (esta clase)
  97. EventoMouse ev = new EventoMouse();
  98. frame.add(ev);
  99. // Asignarle tamaño
  100. frame.setSize(500, 500);
  101. // Poner el frame en el centro de la pantalla
  102. frame.setLocationRelativeTo(null);
  103. // Mostrar el frame
  104. frame.setVisible(true);
  105. }
  106.  
  107.  
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement