Advertisement
Guest User

Untitled

a guest
Jan 27th, 2020
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.68 KB | None | 0 0
  1. package com.company;
  2.  
  3. import java.awt.*;
  4.  
  5. import javax.swing.*;
  6. import javax.swing.event.ChangeEvent;
  7. import javax.swing.event.ChangeListener;
  8.  
  9. public class kolos extends JFrame {
  10. int n = 10;
  11. int rr = 0;
  12. int gg = 0;
  13. int bb = 0;
  14. public MyComponent komponent;
  15.  
  16. class MyComponent extends JComponent{
  17.  
  18. @Override
  19. protected void paintComponent(Graphics g) {
  20. super.paintComponent(g);
  21. int szer = getWidth();
  22. int wys = getHeight();
  23. g.setColor(new Color(rr, gg, bb));
  24.  
  25. g.drawLine(0, 0, szer/3, wys/3);
  26. g.drawLine(szer/3, wys/3, szer/3, wys*2/3);
  27. g.drawLine(szer/3, wys*2/3, szer*2/3, wys/3);
  28. g.drawLine(szer*2/3, wys/3, szer*2/3, wys*2/3);
  29. g.drawLine(szer*2/3, wys*2/3, szer, wys);
  30.  
  31. for(int i = 0; i<n; i++){
  32. int x0 = szer*(i+1)/(n+1);
  33. if(x0<szer/3){
  34. g.drawLine(x0, wys*(i+1)/(n+1), x0, 0);
  35. } else if(x0<szer*2/3){
  36. g.drawLine(x0, 0, x0, wys-wys*(i+1)/(n+1));
  37. } else {
  38. g.drawLine(x0, 0, x0, wys*(i+1)/(n+1));
  39. }
  40. }
  41.  
  42. for(int i = 0; i<n; i++){
  43. int y0 = wys*(i+1)/(n+1);
  44.  
  45. if(y0<wys/3){
  46. g.drawLine(0, y0, szer*(i+1)/(n+1), y0);
  47. } else if (y0<wys*2/3) {
  48. g.drawLine(0, y0, szer / 3, y0);
  49. g.drawLine(szer - szer * (i + 1) / (n + 1), y0, szer * 2 / 3, y0);
  50. } else {
  51. g.drawLine(0, y0, szer*(i+1)/(n+1), y0);
  52. }
  53. }
  54.  
  55. }
  56.  
  57. }
  58.  
  59. public kolos(String string) {
  60. super(string);
  61. setDefaultCloseOperation(EXIT_ON_CLOSE);
  62. Toolkit kit = Toolkit.getDefaultToolkit();
  63. Dimension d = kit.getScreenSize();
  64. setBounds(d.width/4, d.height/4, d.width/2, d.height/2);
  65. add(komponent=new MyComponent());
  66. JPanel panel = new JPanel();
  67. add(panel, BorderLayout.SOUTH);
  68. final JSlider slider1 = new JSlider(1, 100, n);
  69. slider1.addChangeListener(new ChangeListener() {
  70.  
  71. @Override
  72. public void stateChanged(ChangeEvent arg0) {
  73. n = slider1.getValue();
  74. komponent.repaint();
  75. }
  76. });
  77. final JSlider slider2 = new JSlider(0, 255, rr);
  78. slider2.addChangeListener(new ChangeListener() {
  79.  
  80. @Override
  81. public void stateChanged(ChangeEvent arg0) {
  82. rr = slider2.getValue();
  83. komponent.repaint();
  84. }
  85. });
  86. final JSlider slider3 = new JSlider(0, 255, gg);
  87. slider3.addChangeListener(new ChangeListener() {
  88.  
  89. @Override
  90. public void stateChanged(ChangeEvent arg0) {
  91. gg = slider3.getValue();
  92. komponent.repaint();
  93. }
  94. });
  95. final JSlider slider4 = new JSlider(0, 255, bb);
  96. slider4.addChangeListener(new ChangeListener() {
  97.  
  98. @Override
  99. public void stateChanged(ChangeEvent arg0) {
  100. bb = slider4.getValue();
  101. komponent.repaint();
  102. }
  103. });
  104. panel.add(slider1);
  105. panel.add(slider2);
  106. panel.add(slider3);
  107. panel.add(slider4);
  108. setVisible(true);
  109. }
  110.  
  111. public static void main(String[] args) {
  112. EventQueue.invokeLater(new Runnable() {
  113.  
  114. @Override
  115. public void run() {
  116. new kolos("kolokwium1");
  117. }
  118. });
  119. }
  120.  
  121. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement