1
我正在嘗試編寫一個程序,用於顯示每個字體大小從6到20的短語。我創建了一個for循環來增加每次顯示短語時的字體大小和y軸。但是,當我運行該程序時,它只會顯示一次字體大小爲20的短語...我錯過了什麼?在循環中使用字體大小
import javax.swing.*;
import java.awt.*;
public class JFontSizes extends JFrame
{
String phrase = new String("This is a phrase in every font size from 6 through 20!");
int font = 6;
int y = 100;
public JFontSizes()
{
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void paint(Graphics gr)
{
while(font < 21)
{
super.paint(gr);
Font timesPlain = new Font("Times New Roman",Font.PLAIN, font);
gr.setFont(timesPlain);
gr.drawString(phrase, 60, y);
font++;
y = y + 1;
}
}
public static void main(String[]args)
{
JFontSizes frame = new JFontSizes();
frame.setSize(550,550);
frame.setVisible(true);
}
}
嗯,我會說,它只是發生的非常快。最後的字體大小是20,這就是你所看到的。或者,添加睡眠方法,以便您可以看到它,或者爲每個尺寸使用不同的「字體」元素。 – Mathemats
請參閱編輯以回答問題 –