Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2014
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. package moj1projekt;
  2.  
  3. import java.awt.event.*;
  4. import java.awt.*;
  5.  
  6. import javax.swing.*;
  7.  
  8. public class GUI5PrzyciskiRadio extends JFrame {
  9. private JTextField tf;
  10. private Font pf;
  11. private Font bf;
  12. private Font itf;
  13. private Font bif;
  14. private JRadioButton pb;
  15. private JRadioButton bb;
  16. private JRadioButton ib;
  17. private JRadioButton bib;
  18. private ButtonGroup group; // będziemy grupować przyciski, żeby nie działały osobno ale jako grupa
  19.  
  20. public GUI5PrzyciskiRadio(){
  21. super("ttyuuayayl");
  22. setLayout(new FlowLayout()); //defaultowy layout
  23. setLocation(500,400);
  24.  
  25. tf = new JTextField("tekst field 1", 22);
  26. add(tf);
  27.  
  28. pb = new JRadioButton("plain", true); // true oznacza zaznaczony (wciśnięty?) false unchecked, ustalamy przyciski i co obok nich jest napisane
  29. bb = new JRadioButton("bold", false);
  30. ib = new JRadioButton("italic", false);
  31. bib = new JRadioButton("bold n italic", false);
  32. add(pb);
  33. add(bb);
  34. add(ib);
  35. add(bib);
  36.  
  37. group = new ButtonGroup();
  38. group.add(bb); //dzięki temu wiedzą, ze jak jeden jest wciśnięty reszta się wyłącza
  39. group.add(pb);
  40. group.add(ib);
  41. group.add(bib);
  42.  
  43. pf = new Font("Serif", Font.PLAIN, 14); //ustawiamy czcionki jakie będzie przybierać tekst w polu tekstowym tf
  44. bf = new Font("Serif", Font.BOLD, 14);
  45. itf = new Font("Serif", Font.ITALIC, 14);
  46. bif = new Font("Serif", Font.BOLD + Font.ITALIC, 14);
  47.  
  48. tf.setFont(pf);
  49.  
  50. pb.addItemListener(new Handler(pf)); // additemlistener czeka na wydarzenie, a jak sei zdarzy to pobiera font obiekt do konstruktora Handler
  51. bb.addItemListener(new Handler(bf));
  52. ib.addItemListener(new Handler(itf));
  53. bib.addItemListener(new Handler(bif));
  54. }
  55.  
  56. private class Handler implements ItemListener{ //implemetujemy abstrakcyjną klasę ItemListener, ale umsimy napisać wszystko co w niej jest (jedna metoda)
  57. private Font font;
  58.  
  59. public Handler(Font f){ //obiekt font pobiera (dostaje) zmienną f
  60. font = f;
  61. }
  62. public void itemStateChanged(ItemEvent event){ // jest to metoda implementowana z abstrakcyjnej klasy itemlistener
  63. tf.setFont(font);
  64. }
  65.  
  66.  
  67. }
  68.  
  69.  
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement