スタンフォード大学のオンライン CS106A コースを使用して Java を学ぼうとしています。このコースでは、 http://jtf.acm.org/の acm ライブラリ パッケージを使用します。
以下の私のコードがy軸に沿ってラベルを中央に配置しないのはなぜですか?
import acm.program.*;
import acm.graphics.*;
public class CenterLabel extends GraphicsProgram {
public void run() {
GLabel text = new GLabel("HELLO!");
text.setFont("Arial-200");
double cy = (getHeight() / 2) + (text.getAscent() / 2);
text.setLocation(0, cy);
add(text);
}
}
このプログラムを実行すると、次のようになります: http://i.imgur.com/rriSX.jpg
編集: 私を悩ませているもう1つのことは、割り当てで実行されたサンプルにも同じ配置の問題があるように見えることです。(下のリンク、例 3 を参照)
http://see.stanford.edu/materials/icspmcs106a/13-assignment-2-simple-java.pdf
写真をよく見ると、クラスボックス内のラベルもきちんと中央に配置されていないことがわかりますか?