Olá pessoal… preciso criar um componente para inserir em um JFrame. Esse componente contém uma imagem e alguns recursos relacionados a eventos… Pensei em criar uma classe que extendesse JLabel e personalizá-la… mas acontece que esse meu componente tem as bordas arredondadas e as quinas devem permanecer transparentes… alguém tem idéia de como fazer isso?? abraços…
Existem 3 formas:
-
A primeira é continuar extendendo seu JLabel e implementar uma nova versão da classe Border.
-
A segunda é sobrescrever JPanel, alterar o método paintComponent e desenhar seu componente na mão, usando para isso java2d.
-
A terceira é unir as duas. Sobrescrever o paintComponent do panel para desenhar a parte de dentro de seu componente e criar um novo filho da classe Border para posteriormente associar uma borda a ele.
Em qualquer caso, esses tutoriais são para você:
http://java.sun.com/docs/books/tutorial/uiswing/painting/practice.html
http://java.sun.com/docs/books/tutorial/uiswing/components/scrollpane.html#scrollable
http://java.sun.com/j2se/1.5.0/docs/guide/2d/spec/j2d-bookTOC.html