グラフィックスを扱う |
問題: 描画コードを記述する場所がわからない。
- 描画コードは、ユーザ自身が作成するコンポーネントの paint() メソッド部分に記述する。 特製のコンポーネントは、Canvas、Panel、または Applet クラスのサブクラス の作成を通して作ることができる。 作成したコンポーネントの実装については、 キャンバスの使用方法 を参 照する。 効率を上げるには、うまく動作する描画コードを作成した後、それを update() メソッドに置くように修正すればよい (ただしこの場合も、 paint() はやはり実装しなければならない)。なお、この説明は、 フラッシングを排除するに記載されている。
問題: 描画したものが画面に現れない。
- 作成したコンポーネントがともかく表示されるかどうかを確認する。 この問題については、 コンポーネントに関して起こりやすい問題 が参考になるはずである。
問題: チュートリアルの例とまったく同じコードを使ったのに動作しない。なぜか?
- そのコードは、チュートリアルのコードとまったく同じメソッドで実行されて いるか? たとえば、チュートリアルの例のコードが、その例の paint() または update() メソッドにあるなら、そのコードが動作を保証され る場所はこれら 2 つのメソッドだけである。
問題: 太線やパターンはどのように描くのか?
- プリミティブなグラフィックスのための AWT の API は、現在のところかなり 限定されている。 たとえば、ラインの幅は 1 つしかサポートされていない。 1 ピクセルのオフセットで複数回ラインを描画したり、塗りつぶしの矩形を描 画するなどして、太線をシミュレートすることができる。 また、AWT は現在のところ、塗りつぶしやラインのパターンをサポートしていない。
読者の抱える問題がこのリストに記載されていない場合は、 コンポーネントに関して起こりやすい問題 と 配置に関して起こりやすい問題 を参 照する。
グラフィックスを扱う |