Advertisement
Guest User

Untitled

a guest
Apr 19th, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.26 KB | None | 0 0
  1. import javax.swing.*;
  2. import java.awt.*;
  3. import java.awt.event.ActionEvent;
  4. import java.awt.event.ActionListener;
  5. import java.util.Scanner;
  6.  
  7. public class Classthingy implements ActionListener {
  8.  
  9. private static JTextField xTextField, yTextField, rTextField;
  10. private static JButton drawButton;
  11.  
  12. private static Panel mainPanel;
  13.  
  14. private static int x = 0, y = 0, r = 0;
  15.  
  16. public Classthingy() {
  17. JFrame frame = new JFrame("Class thingy");
  18.  
  19. xTextField = new JTextField();
  20. yTextField = new JTextField();
  21. rTextField = new JTextField();
  22. drawButton = new JButton("Draw");
  23.  
  24. mainPanel = new Panel();
  25.  
  26. xTextField.setPreferredSize(new Dimension(75, 20));
  27. yTextField.setPreferredSize(new Dimension(75, 20));
  28. rTextField.setPreferredSize(new Dimension(75, 20));
  29.  
  30. drawButton.addActionListener(this);
  31.  
  32. JPanel panel = new JPanel();
  33.  
  34. panel.setLayout(new GridLayout(1, 4));
  35.  
  36. panel.add(new JLabel("X:"));
  37. panel.add(xTextField);
  38. panel.add(new JLabel("Y:"));
  39. panel.add(yTextField);
  40. panel.add(new JLabel("R:"));
  41. panel.add(rTextField);
  42.  
  43. frame.add(panel, BorderLayout.NORTH);
  44. frame.add(mainPanel, BorderLayout.CENTER);
  45. frame.add(drawButton, BorderLayout.SOUTH);
  46.  
  47. frame.pack();
  48. frame.setLocationRelativeTo(null);
  49. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  50. frame.setVisible(true);
  51. }
  52.  
  53. @Override
  54. public void actionPerformed(ActionEvent e) {
  55. x = Integer.parseInt(xTextField.getText());
  56. y = Integer.parseInt(yTextField.getText());
  57. r = Integer.parseInt(rTextField.getText());
  58.  
  59. mainPanel.repaint();
  60. }
  61.  
  62. public static void main(String[] args) {
  63. new Classthingy();
  64. }
  65.  
  66. private static class Panel extends JPanel {
  67. public Panel() {
  68. this.setPreferredSize(new Dimension(200, 200));
  69. repaint();
  70. }
  71.  
  72. public void paintComponent(Graphics g) {
  73. g.setColor(Color.BLACK);
  74. g.fillRect(0, 0, getWidth(), getHeight());
  75. g.setColor(Color.RED);
  76. g.fillOval(x - r, y - r, r * 2, r * 2);
  77. }
  78. }
  79. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement