Jak zaimplementować JCheckBox wewnątrz JButton?

0

Próbowałem paru możliwości i wszystkie zawiodły. Do tej pory myślałem, że wszystko jest w Javie możliwe do zrealizowania. Jednym z moich rozwiązań które nie tworzy błędów kompilacji i się uruchamia (ale checkboxu nie widać) jest dorzucenie go jako ikony:

user image

  class myCheckBox extends JCheckBox implements Icon {
      int w = 20;

      public myCheckBox() {
        super();
        setSelected(true);
        setFocusPainted(false);
        setOpaque(false);
        setToolTipText(" close route ");
        addItemListener(new ItemListener() {
           public void itemStateChanged(ItemEvent e) {
              if (e.getStateChange() == ItemEvent.SELECTED) { }
           }
        });
      }

      public void paintIcon(Component c, Graphics g, int x, int y) { }

      public int getIconWidth() { return w; }
      public int getIconHeight() { return w; }
  }

później:

  myCheckBox CB = new myCheckBox();
  button.setIcon(CB);

Próby tworzenia własnej klasy buttonu z managerem rozkładu też zawodzą. Czy macie jakieś pomysły?

0

Nie jestem do końca pewien co chcesz osiągnąć, i jak to ma wyglądać, ale najprostsze sposoby są najprostsze:

JCheckBox jcb = new JCheckBox();
button.add(jcb);

W Twoim kodzie się nic nie wyświetla, bo nic nie wyświetlasz (paintIcon u Ciebie nic nie robi, a powinna rysować tego checkbox'a)

0

Lol, w rzeczy samej, smiga i pytanie okazalo sie banalem... nie wspominajac ze z roznych prob zawiodlo ze sto linijek kodu. Dzieki!

1 użytkowników online, w tym zalogowanych: 0, gości: 1