Guest User

Untitled

a guest
Aug 21st, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.69 KB | None | 0 0
  1. import java.awt.Graphics;
  2. import java.awt.Graphics2D;
  3. import java.awt.event.MouseEvent;
  4. import java.awt.event.MouseListener;
  5. import java.awt.image.BufferedImage;
  6. import java.io.File;
  7. import java.io.IOException;
  8.  
  9. import javax.imageio.ImageIO;
  10. import javax.swing.JComponent;
  11.  
  12. @SuppressWarnings("serial")
  13. public class Button extends JComponent implements MouseListener {
  14.  
  15. public BufferedImage dumpButton, dumpButtonHovered, dumpButtonPressed;
  16. public boolean hovered, pressed;
  17. public int buttonX, buttonY;
  18. public Frame frame;
  19.  
  20. public void loadImages() {
  21. try {
  22. dumpButton = ImageIO.read(new File("./DumpButton.png"));
  23. dumpButtonHovered = ImageIO.read(new File("./DumpButtonHovered.png"));
  24. dumpButtonPressed = ImageIO.read(new File("./DumpButtonPressed.png"));
  25. } catch (IOException exception) {
  26. exception.printStackTrace();
  27. }
  28. }
  29.  
  30. public Button(int x, int y) {
  31. addMouseListener(this);
  32. loadImages();
  33. buttonX = x;
  34. buttonY = y;
  35. }
  36.  
  37. @Override
  38. public void paintComponent(Graphics graphics) {
  39. if(!pressed) {
  40. graphics.drawImage(hovered ? dumpButtonHovered : dumpButton, buttonX, buttonX, 120, 27, null);
  41. } else {
  42. graphics.drawImage(dumpButtonPressed, buttonX, buttonX, 120, 27, null);
  43. }
  44. }
  45.  
  46. @Override
  47. public void mouseClicked(MouseEvent arg0) {
  48.  
  49. }
  50.  
  51. @Override
  52. public void mouseEntered(MouseEvent arg0) {
  53. hovered = true;
  54. repaint();
  55. }
  56.  
  57. @Override
  58. public void mouseExited(MouseEvent arg0) {
  59. hovered = false;
  60. repaint();
  61. }
  62.  
  63. @Override
  64. public void mousePressed(MouseEvent arg0) {
  65. pressed = true;
  66. repaint();
  67. }
  68.  
  69. @Override
  70. public void mouseReleased(MouseEvent arg0) {
  71. pressed = false;
  72. repaint();
  73. }
  74. }
Add Comment
Please, Sign In to add comment