SHARE
TWEET

Untitled

a guest Jan 27th, 2020 62 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import java.awt.BorderLayout;
  2. import java.awt.Dimension;
  3. import java.awt.EventQueue;
  4. import java.awt.Graphics;
  5. import java.awt.Toolkit;
  6.  
  7. import javax.swing.*;
  8. import javax.swing.event.ChangeEvent;
  9. import javax.swing.event.ChangeListener;
  10.  
  11.  
  12. public class p08 extends JFrame {
  13.     private int n=5;
  14.     private MyComponent komponent;
  15.     class MyComponent extends JComponent{
  16.  
  17.         @Override
  18.         protected void paintComponent(Graphics g) {
  19.             int szer=getWidth();
  20.             int wys=getHeight();
  21.             g.drawLine(0, 0, szer/4, wys/4);
  22.             g.drawLine(szer/4, wys/4, szer/4, wys*3/4);
  23.             g.drawLine(szer/4, wys*3/4, szer*3/4, wys/4);
  24.             g.drawLine(szer*3/4, wys/4, szer*3/4, wys*3/4);
  25.             g.drawLine(szer*3/4, wys*3/4, szer, wys);
  26.             for(int i=0;i<n;i++){
  27.                 int x=getWidth()*(i+1)/(n+1);
  28.                 if(x<szer/4)
  29.                     g.drawLine(x, 0, x, wys*(i+1)/(n+1));
  30.                 else if(x<szer*3/4)
  31.                     g.drawLine(x, 0, x, wys-wys*(i+1)/(n+1));
  32.                 else
  33.                     g.drawLine(x, 0, x, wys*(i+1)/(n+1));
  34.             }
  35.             for(int i=0;i<n;i++){
  36.                 int y=getHeight()*(i+1)/(n+1);
  37.                 if(y<wys/4)
  38.                     g.drawLine(szer*(i+1)/(n+1), y, 0, y);
  39.                 else if(y<wys*3/4){
  40.                     g.drawLine(0, y, szer/4, y);
  41.                     g.drawLine(szer-szer*(i+1)/(n+1), y, szer*3/4, y);
  42.                 }else
  43.                     g.drawLine(szer*(i+1)/(n+1), y, 0, y);
  44.             }
  45.             super.paintComponent(g);
  46.         }
  47.        
  48.     }
  49.     public p08(String string) {
  50.         super(string);
  51.         Toolkit kit=Toolkit.getDefaultToolkit();
  52.         Dimension d=kit.getScreenSize();
  53.         setBounds(d.width/6, d.height/6, d.width*2/3, d.height*2/3);
  54.         setDefaultCloseOperation(EXIT_ON_CLOSE);
  55.         add(komponent=new MyComponent());
  56.         JPanel panel=new JPanel(new BorderLayout());
  57.         add(panel,BorderLayout.SOUTH);
  58.         final JSlider slider=new JSlider(1,100,n);
  59.         slider.addChangeListener(new ChangeListener() {
  60.            
  61.             @Override
  62.             public void stateChanged(ChangeEvent e) {
  63.                 n=slider.getValue();
  64.                 komponent.repaint();
  65.             }
  66.         });
  67.         panel.add(slider);
  68.         setVisible(true);
  69.     }
  70.  
  71.     public static void main(String[] args) {
  72.         EventQueue.invokeLater(new Runnable() {
  73.            
  74.             @Override
  75.             public void run() {
  76.                 new p08("p08");
  77.             }
  78.         });
  79.     }
  80.  
  81. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top