Advertisement
Guest User

Untitled

a guest
Oct 21st, 2019
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.06 KB | None | 0 0
  1. import java.awt.BorderLayout;
  2. import java.awt.Color;
  3. import java.awt.Dimension;
  4. import java.awt.EventQueue;
  5. import java.awt.Graphics;
  6. import java.awt.Toolkit;
  7.  
  8. import javax.swing.JComponent;
  9. import javax.swing.JFrame;
  10. import javax.swing.JLabel;
  11. import javax.swing.JPanel;
  12. import javax.swing.JSlider;
  13. import javax.swing.event.ChangeEvent;
  14. import javax.swing.event.ChangeListener;
  15.  
  16. public class P04 extends JFrame {
  17.  
  18. private int n=1;
  19. public MyComponent komponent;
  20. class MyComponent extends JComponent{
  21.  
  22. @Override
  23. protected void paintComponent(Graphics g) {
  24. int x0=getWidth()/6;
  25. int y0=getHeight()/6;;
  26. int szer=getWidth()*2/3;
  27. int wys=getHeight()*2/3;
  28.  
  29. //for(int i=0;i<n;i++)
  30. //int x=x0+szer*i/(n-1);
  31. //g.drawLine(x1,y0,x,y0+wys);
  32. for(int i=0;i<n-1;i++)
  33. {
  34. for(int j=0;j<n-1;j++)
  35. {
  36. g.setColor(((i+j)%2==0)?Color.WHITE:Color.BLACK);
  37. g.fillRect(x0+szer*i/(n-1), y0+wys*j/(n-1), szer/(n-1), wys/(n-1));
  38. }
  39.  
  40. }
  41.  
  42. super.paintComponent(g);
  43.  
  44. }
  45. }
  46.  
  47. public P04(String string) {
  48. super(string);
  49. Toolkit kit=Toolkit.getDefaultToolkit();
  50. Dimension d=kit.getScreenSize();
  51. setBounds(d.width/6,d.height/6,d.width*2/3,d.height*2/3);
  52. setDefaultCloseOperation(EXIT_ON_CLOSE);
  53. add(komponent=new MyComponent());
  54. JPanel panel=new JPanel(new BorderLayout());
  55. add(panel,BorderLayout.SOUTH);
  56.  
  57.  
  58. final JLabel label = new JLabel(getDesc());
  59. d=label.getPreferredSize();
  60. d.width*=1.25;
  61. final JSlider slider=new JSlider(1,20,n);
  62. slider.addChangeListener(new ChangeListener() {
  63.  
  64. @Override
  65. public void stateChanged(ChangeEvent e) {
  66. n = slider.getValue();
  67. label.setText(getDesc());
  68. komponent.repaint();
  69.  
  70.  
  71. }
  72. });
  73. panel.add(slider);
  74. panel.add(label,BorderLayout.WEST);
  75. setVisible(true);
  76. }
  77.  
  78.  
  79. private String getDesc() {
  80.  
  81. return " n = "+n;
  82. }
  83.  
  84.  
  85. public static void main(String[] args) {
  86. EventQueue.invokeLater(new Runnable() {
  87.  
  88. @Override
  89. public void run() {
  90. new P04("p04");
  91.  
  92. }
  93. });
  94.  
  95. }
  96.  
  97. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement