1

私はこのようなコードを持っています:

jLabel.setIcon(map);
Graphics2D g = (Graphics2D) jLabel.getGraphics();
g.drawPolygon(xpoints,ypoints,vpolygonpointsarray.length);

ただし、ラベルアイコンが更新される前に、ポリゴンが最初に描画されます。アイコンを設定すると、新しいスレッドが作成されると思います。アイコンが設定されるまで待ってから、残りのコードを実行したいと思います。どうすればいいですか?

4

1 に答える 1

6

paint()カスタムペイントコードは、オーバーライドされたペイントメソッド(など)で実行する必要がありますpaintComponents()。ここをチェックしてください:http://docs.oracle.com/javase/tutorial/uiswing/painting/step2.html

于 2012-05-26T09:42:40.137 に答える