2017-10-14 31 views
0

我剛剛開始我的comp科學課程和3周,我已經掙扎。使用BlueJ我需要創建一個矩形,其中包括方法標籤,矩形的高度,矩形的顏色,標籤和矩形的位置以及矩形的寬度。它基本上看起來像一個條形圖,其左側有文本,因此我需要計算出像素的文本寬度,然後我可以從矩形的x位置中減去它。我沒有使用java或編程的經驗,因此我需要某種label.getWidth();命令如何獲得在java中的字符串的寬度

+1

http://idownvotedbecau.se/noattempt/你確定你不是被要求模擬一個矩形而不是繪製它嗎?在第3周跳進圖形用戶界面的計算機科學課程似乎很奇怪/設計不佳。 –

回答

2

文本的寬度取決於您使用的字體。例如,五個字符可以看起來像:在可變寬度的字體

IIIII

MMMMM

(一個 'i' 是不一樣寬的 'M')。

在固定寬度的字體,五個字符總是相同的寬度:

iiiii 

mmmmm 

所以,爲了保持簡單,切換到一個固定寬度的字體(比方說速遞)計數的字符數和乘由單個字符的寬度決定。

可變寬度字體也可以進行類似的計算,但更復雜。

相關問題