Como criar um componente Swing personalizado [fechado]

Eu sempre quis criar componentes personalizados em Java ou personalizar os existentes, mas minhas pesquisas nunca resultaram em algo útil. Então decidi perguntar à comunidade StackOverflow:

Onde posso encontrar informações sobre como personalizar os componentes da GUI do Java em gera

E quando eu quero dizer customizar, não estou falando sobre mudar cores, fontes etrealment personalize-os. Aqui estão dois componentes de exemplo de maquete:

Nota
Comecei esta pergunta principalmente para descobrir como criar os dois componentes personalizados acima. Mas então percebi que não há uma pergunta geral sobre hacking de componentes de giro. Por isso, pensei que seria melhor ter uma lista de recurso

Caso você esteja se perguntando como funcionam os dois componentes da maquete, aqui está:

Um JScrollPane personalizado que possui duas barras de rolagem para cada orientação. Cada barra de rolagem pode agir de maneira diferente. Por exemplo, as externas rolam normalmente e as internas movem a visualização em mais Picasa maneira. Na verdade, recebi uma resposta (!) Funcional dos grupos do Googleaqu, mas isso era apenas código.

O segundo é um JComboBox personalizado que, quando a lista pop-up é expandida, possui um JComponent no final. Isso pode ser qualquer coisa, desde um JLabel simples com um ícone até um JButton que manipula a lista de alguma maneir

Mas esta pergunta não é sobre esses componentes específicos. É sobre encontrar recursos (sites, livros, artigos etc.) para aprender como criá-los.

questionAnswers(6)

yourAnswerToTheQuestion