• ベストアンサー

Javaでチェックボックス作成について

はじめまして。 SwingのJCheckBoxを利用してチェックボックスを作成しました。 そこでチェックした時に、そのチェックボックスに色を塗り潰したいと思いsetBackgroundメソッドを利用してみたのですが、するとその設定した色がJCheckBoxを貼り付けてるいるパネルまで色が塗りつぶされてしまいます。 チェックボックスだけに色を塗りつぶしたいのですが どなたかその方法を教えてください。 宜しく御願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • ct27
  • ベストアンサー率62% (48/77)
回答No.2

JCheckBoxが用意しているメソッドでは不可能です。 もしLook&FeelがMetalである場合、MetalCheckBoxIconの paintIconというメソッドあたりをオーバーライドしな ければならないと思います。(MetalCheckBoxIconのソース を見るとわかると思います) 実際やっていないのでかなり予想で書いていますがおそらく そうではないかと。ご参考になればと思います。

st33
質問者

お礼

御回答有難うございました。 試してみます。

その他の回答 (1)

  • liar_adan
  • ベストアンサー率48% (730/1515)
回答No.1

それはJFrameのコンテントペインに貼ったときの現象でしょうか? JFrameのデフォルトレイアウトマネージャはBorderLayoutなので、 普通にadd()すると、フレームの全画面を占めてしまいます。 FlowLayoutなどを使うと、チェックボックスの大きさを 制限することができます。 もしかすると、チェックボックスの印を付ける部分だけ色を変えたいと言うことでしょうか? その場合は、機能が用意されてないので、難しいと思います。

st33
質問者

お礼

御回答有難うございました。 試してみます。

関連するQ&A