Guest User

Untitled

a guest
Apr 26th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.46 KB | None | 0 0
  1. package ramka;
  2.  
  3. import javax.swing.*;
  4. import java.awt.*;
  5. import javax.swing.border.Border;
  6. /* @author Paweł Pamuła */
  7. public class Ramka extends JPanel {
  8.  
  9. Ramka() {
  10. super(new GridLayout(1,1));
  11.  
  12. JTabbedPane zakladki = new JTabbedPane();
  13. JPanel panel1 = new JPanel();
  14.  
  15. //ustawiamy ramke i layout
  16. panel1.setBorder(BorderFactory.createEmptyBorder(8, 8, 8, 8));
  17. panel1.setLayout(new BoxLayout(panel1, BoxLayout.LINE_AXIS));
  18.  
  19. //dodajemy przyciski i painting panel
  20. panel1.add(stworzPanel1());
  21. panel1.add(new PanelDoRysowania(Color.pink));
  22.  
  23.  
  24. //to samo dla kolejnej zakladki
  25. JPanel panel4 = new JPanel();
  26. panel4.setBorder(BorderFactory.createEmptyBorder(8, 8, 8, 8));
  27. panel4.setLayout(new BoxLayout(panel4, BoxLayout.LINE_AXIS));
  28. panel4.add(stworzPanel4());
  29. panel4.add(new PanelDoRysowania(Color.green));
  30.  
  31. zakladki.addTab("Zakladka1", panel1);
  32. zakladki.addTab("Zakladka4", panel4);
  33.  
  34. add(zakladki);
  35. zakladki.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
  36. }
  37.  
  38. private JPanel stworzPanel1()
  39. {
  40. JPanel panel = new JPanel();
  41. panel.setLayout(new BoxLayout(panel, BoxLayout.PAGE_AXIS));
  42.  
  43. //ustawiamy ramke z prawej strony przyciskow
  44. Border b = BorderFactory.createEmptyBorder(0, 0, 0, 10);
  45. panel.setBorder(b);
  46.  
  47. JButton przycisk1 = new JButton("przycisk1");
  48. JButton przycisk2 = new JButton("przycisk2");
  49. JButton przycisk3 = new JButton("przycisk3");
  50.  
  51. panel.add(przycisk1);
  52. panel.add(Box.createRigidArea(new Dimension(0, 8)));
  53. panel.add(przycisk2);
  54. panel.add(Box.createRigidArea(new Dimension(0, 8)));
  55. panel.add(przycisk3);
  56. panel.add(Box.createVerticalGlue());
  57.  
  58. return panel;
  59. }
  60.  
  61. private JPanel stworzPanel4()
  62. {
  63. JPanel panel = new JPanel();
  64. panel.setLayout(new BoxLayout(panel, BoxLayout.PAGE_AXIS));
  65.  
  66. //ustawiamy ramke z prawej strony przyciskow
  67. Border b = BorderFactory.createEmptyBorder(0, 0, 0, 10);
  68. panel.setBorder(b);
  69.  
  70. JButton przycisk1 = new JButton("przycisk1");
  71. JButton przycisk2 = new JButton("przycisk2");
  72. JButton przycisk3 = new JButton("przycisk3");
  73.  
  74. panel.add(przycisk1);
  75. panel.add(Box.createRigidArea(new Dimension(0, 8)));
  76. panel.add(przycisk2);
  77. panel.add(Box.createRigidArea(new Dimension(0, 8)));
  78. panel.add(przycisk3);
  79. panel.add(Box.createVerticalGlue());
  80.  
  81. return panel;
  82. }
  83.  
  84. public static void main(String[] args) {
  85.  
  86. final Ramka r = new Ramka();
  87. JFrame glowneOkno = new JFrame("Nazwa okienka");
  88. glowneOkno.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  89. glowneOkno.setPreferredSize(new Dimension(500, 300));
  90.  
  91. Ramka zakladki = new Ramka();
  92. glowneOkno.add(zakladki);
  93.  
  94. glowneOkno.pack();
  95. glowneOkno.setVisible(true);
  96. }
  97. }
  98. class PanelDoRysowania extends JPanel
  99. {
  100.  
  101. PanelDoRysowania(Color color)
  102. {
  103. setBackground(color);
  104. }
  105.  
  106. @Override public void paintComponent(Graphics g)
  107. {
  108. super.paintComponent(g);
  109. g.drawString("Tutaj sobie cos rysujemy", 40, 40);
  110. }
  111. }
Add Comment
Please, Sign In to add comment