我正在編寫Java代碼以顯示學生在班級中的成績。我有一個小問題。我想使用兩個滑塊,一個調整文本(輸出)字體大小,另一個滑塊調整字母之間的間距。例如,當我在標有#of Grade As的JLabel框中輸入數字'5'時,按下按鈕「Display output as a string of letters」,我得到結果:「Grade As:AAAAA。 「我想要做的(如上所述)是調整字母A的大小,並調整連續字母A之間的間距。有人可以告訴我如何做到這一點。我當然知道我必須建立一個JSlider,但是我到底做了什麼?我的部分代碼如下:如何使用滑塊來調整字體大小和字母間距
if (e.getSource() == displayChartButton) {
checkAndRecordData();
Graphics g = chartPanel.getGraphics();
g.setColor(Color.white);
g.fillRect(20,20,410,52);
g.setColor(Color.black);
g.drawRect(20,20,410,52);
g.setColor(Color.black);
g.drawString("Grade As: " + gradeAs, chartLeftXA, chartTopYA);
}
if (e.getSource() == displayLongString) {
Graphics g = chartPanel.getGraphics();
g.setColor(Color.white);
g.fillRect(20,20,410,52);
g.setColor(Color.black);
g.drawRect(20,20,410,52);
g.setColor(Color.black);
g.drawString("Grade As: " + longStringA, 100, 50);
}
private void checkAndRecordData() {
gradeAs = tempAs;
longStringA = "";
String gradeLetterA = "A";
for (int i=0; i<tempAs; i++)
longStringA += gradeLetterA;
}
public void stateChanged(ChangeEvent event) {
int size = slider.getValue();
}
一旦我得到的最後一行,詮釋大小= slider.getValue(),我不知道該怎麼辦。請記住,我有兩件事要做。一個是調整字母的大小,另一個是調整字母之間的間距,因此我需要兩個滑塊。有人可以幫忙嗎?
而不是直接一個'Graphics'對象上繪製的,它可能是更好的只是添加字母'在兩者之間間隔對象JLabel's - 那麼你可以在'JLabel's上調用'setFont'來設置高度,並在你的'stateChanged'方法中調整spacer對象的大小。 –
這是我不會想到的。這很聰明。多謝 ! – JCDyson