ページへ戻る

− Links

 印刷 

blike​/Java​/p0004 のソース :: OSASK計画

osaskwiki:blike/Java/p0004のソース

« Prev[3]  
TITLE:x
* 文字を書く [#f745a9ed]
-(by [[K]], 2070.07.09)
*** (0) [#c78fe3a3]
-このblikeでは厳密な説明を避けています。そもそもこれはJavaではなくてJavaアプレットだろう?とか、オブジェクト名が違ったらこの限りではないとか、こんな描画方法では処理が重くなるから良くないとか、そういうことは全て承知の上です。そういうことの説明を先送りする代わりに、まずは分かりやすくとっつきやすくしています。
*** (1) [#v06b8ead]
-Javaで文字を書くときは、
 grp.drawString("~", x座標, y座標);
-という命令を使います。座標は文字の書き始めの位置で、先頭の文字の左上の座標ではなく、先頭文字の左下の座標を指定します。
-座標っていうと分かりにくい人は、
--x座標=画面の左端までの距離
--y座標=画面の上端までの距離
-だと思えばいいと思います。
-だから、x座標を増やせば文字は右に行きますし、y座標を増やせば文字は下に行きます。
-なお、どんなにたくさん grp.drawString() しても、最後に repaint(); というのを書かないと画面には出ないことがあります。 repaint(); が来るまでJavaは画面描画の処理を間引いて、 repaint(); が来たら遅れたぶんを全部取り戻すということをしています。これは高速化とちらつき防止のためです。
-最後だけではなくて、時間待ちなどの前にも repaint(); を忘れないようにしましょう。
-repaint(); が必要なのは、文字を書くだけではなくて、描画関係の命令すべてに当てはまります。
*** (2) [#v5a4dca5]
-Javaで文字を書くとき、文字をもっと大きくしたい、もっと小さくしたい、フォントを少し変えたい、と思うことがあります。
-そんなときは、
 grp.setFont(new Font("Dialog", 文字のタイプ, 文字の大きさ));
--文字のタイプ:
---Font.PLAIN : 普通の文字
---Font.ITALIC : 斜体の文字
---Font.BOLD : 太字
-とやります。これで次回以降の grp.drawString() では指定したフォントで書けるようになります。文字の大きさは、12が標準の大きさです。
*** (3) [#mb5c6d4b]
-Javaでは %d みたいな指定がありません。じゃあ、変数の内容を表示するにはどうするの?ってなるわけですが、それは「数字を文字列に変換した上で、文字列を足し算する」という方法を使います。
-たとえばこんな感じです。
 a = 3; b = 5;
 grp.drawString(Integer.toString(a) + "+" + Integer.toString(b) + "=" + Integer.toString(a + b), 100, 100);
-こうすると、画面には、 3+5=8 と出るはずです。
-数字だけを書きたいときは、足し算しないで、
 grp.drawString(Integer.toString(a), 100, 100);
-とかでももちろんOKです。

« Prev[3]