next up previous
: 演習 : アプレットの構造 : インスタンスのメソッド

画面への描画

ブラウザ上のアプレット表示領域にグラフィックや文字列を描画するには, paint()メソッドの引数で与えられた Graphics クラスのイン スタンスの描画メソッドを呼びだす. 以下に代表的な幾つかのメソッドを示す.




\begin{itembox}{drawLine() メソッド}
\begin{verbatim}書式:drawLine(int x1,in...
...im}\par 座標 \verb*+(x1,y1)+ から \verb*+(x2,y2)+ への直線を描く.
\end{itembox}




\begin{itembox}{drawString() メソッド}
\begin{verbatim}書式:drawString(Strin...
...center}
\epsfile {file=img/drawstring.eps,height=1.8cm}\end{center}\end{itembox}




\begin{itembox}{drawRect() メソッド}
\begin{verbatim}書式:drawRect(int x,int...
...絃紊箸靴董ど\verb*+width+,高さ \verb*+height+ の
長方形を描く.
\end{itembox}




\begin{itembox}{drawOval() メソッド}
\begin{verbatim}書式:drawOval(int x,int...
...\verb*+width+,高さ \verb*+height+ の長
方形に内接する楕円を描く.
\end{itembox}




\begin{itembox}{drawArc() メソッド}
\begin{verbatim}書式:drawArc(int x,int y...
...egin{center}
\epsfile {file=img/drawarc.eps,height=4cm}\end{center}\end{itembox}




\begin{itembox}{setColor() メソッド}
\begin{verbatim}書式:setColor(Color c);...
...ange);}
\\ g.drawLine(x1,y1,x2,y2);
\\ \}
\\
\\ \relax \end{alltt}\end{itembox}



さらに drawRect()drawOval()drawArc() に対応し て,それぞれ fillRect()fillOval()fillArc() と いう塗り潰しをするメソッドも用意されている.

表示領域の大きさは,変更しない限りは HTML 文書の <APPLET>タグで 指定された WIDTH および HEIGHT によって決定される. 座標系は図[*]に示すように,左上を原点(0,0)として右 方向が $x$ 軸の正,下方向が $y$ 軸の正となる.

図: アプレットの描画領域
\begin{figure}
\begin{center}
\epsfile {file=img/drawablearea.eps,width=7cm}\end{center}\end{figure}

アプレットの表示領域の大きさはアプレットのメソッド getSize() で 知ることができる. 返り値は Dimension クラスのインスタンスで,そのメンバ width および height により幅および高さを知ることができる. 以下に例を示す.




\begin{boxedminipage}{15cm}
\begin{verbatim}public void paint(Graphics g) {
...
...ze();
g.drawRect(0,0,d.width-1,d.height-1);
}\end{verbatim}\end{boxedminipage}



その他の描画メソッドについては,


    http://java.sun.com/products/jdk/1.3/ja/docs/ja/api/java/awt/Graphics.html
などを参照のこと.



U-GM\murao 平成14年7月5日