我刚刚开始我的comp科学课程,我已经在努力工作3周了。使用BlueJ
我需要创建一个矩形,包括方法标签,矩形的高度,矩形的颜色,标签和矩形的位置以及矩形的宽度。它基本上看起来像条形图左侧有文本,因此我需要找出文本的宽度(以像素为单位),然后我可以从矩形的x
位置中减去它。我以前没有使用java或编程在画布上绘画的经验,因此我需要某种label.getWidth();
命令
答案 0 :(得分:2)
文本的宽度取决于您使用的字体。例如,五个字符可能如下所示:
IIIII
MMMMM
以可变宽度字体显示('i'不像'm'那样宽。)
在固定宽度字体中,五个字符的宽度始终相同:
iiiii
mmmmm
因此,为了简单起见,切换到固定宽度的字体(比如Courier)计算字符数并乘以单个字符的宽度。
使用可变宽度字体可以进行类似的计算,但更复杂。