Pergunta

É possível colocar um componente infantil dentro de um JButton e torne -o transparente a um subconjunto de eventos de mouse para que:

  • O componente infantil recebe MouseMotionEvents (para que possa responder modificando uma imagem exibida)
  • Clicar ainda diminui o JButton "Atrás" do componente infantil

Se você adicionar o componente filho ao botão, mas não fizer outras alterações, clicar na área ocupada pela criança não ativará o botão.

Eu sei que isso pode ser alcançado criando uma nova classe que se estende JButton Mas eu preferiria usar um componente filho que já foi escrito.

Nota: Isso é puramente por razões cosméticas. O componente filho muda apenas sua própria aparência. Ele não executa outras ações em resposta a cliques. Há apenas um Action, acionado pelo botão da maneira normal.

Foi útil?

Solução

Sim, é possível, mas provavelmente existem maneiras melhores de mudar a aparência de um jbutton no mouse. Você pode estender um botão para fazer isso. No entanto, se você deseja soltar um componente sobre um JButton, passe outros eventos do mouse (por exemplo, cliques) para o JButton subjacente.

Outras dicas

Jxlayer é exatamente o que você precisa. Verificação de saída https://jxlayer.dev.java.net/O site do projeto possui vários bons artigos sobre o uso da JXlayer para muitos casos de uso diferentes.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top