2011-08-14 5 views
3

私は実際にSwingに画像プレースホルダであるボックスを表示したいと思います。これらは固定サイズで、一度プレースホルダに読み込まれると、プレースホルダに合わせて拡大縮小されます。私もそれらの上にペイントすることができるようにしたいと思います。何もない。ちょうどシンプルな点と行、の外側での画像(一部のJButtonでは)、ブラシはありません。イメージプレースホルダを表示するJavaクラスは何ですか?

私はもともと、JLabelを使ってからsetIconを使うと考えました。しかし、それは規模の拡大はありませんか?それに、私はそれが私に塗りつぶされるとは思わない。

ImageIO.readを使ってイメージを取得し、paintComponentで表示することで、JComponentを拡張することを考えました。しかし、イメージをペイントすることができるかどうかはわかりません。また、私はこのGUIコンポーネントがかなり普及していることが分かりました。

提案がありますか?

答えて

3

は私がアドバイスします:

  • あなたの画像や編集したピクセル
  • のJLabelを拡張し、paintComponentメソッドをオーバーライドするコンポーネントが含まれてBufferedImageを。元の画像を最初からJLabelに渡すこともできますし、空のままにしておくこともできます(希望のサイズを設定する必要があります)。 paintComponentの
  • は、バッファリングされたイメージをペイントするだけです。

アンソニー

+1

が、ちょうどJLabelの番号のsetIcon()JLabelのに入れイメージ/イメージアイコンのための方法のpaintComponent()をオーバーライドするために必要とされていない1 – mKorbel

+2

1も参照[ 'RotatableImage'](HTTP: //stackoverflow.com/questions/3405799/how-to-rotate-an-image-gradually-in-swing/3420651#3420651)。 – trashgod

関連する問題