[英]Java - appending text in JTextArea in JScrollPane stops the program
有:JTextArea日志,JScrollPane滚动。 这是正在创建的Scroll函数:
public void createLog(){
log = new JTextArea();
log.setEditable(false);
JScrollPane scroll = new JScrollPane(log);
scroll.setLocation(400,5);
scroll.setSize(400,400);
add(scroll);
}
这是创建滚动窗格的代码。 这是我需要做的功能:
public void setBotx2(int coins, int playcoins){
int lose = 0, play = playcoins;
while(coins > playcoins && coins < 2147483647)
{
lose++;
coins -= play;
if(drawNumberQuickly()%2 == 0)
{
coins += play;
play = playcoins;
log.append(lose + ". Game won. Coins: " + coins + ". Now playing
with: " + play + "\n");
}
else
{
play = playcoins*2;
log.append(lose + ". Game lost. Coins: " + coins + ". Now
playing with: " + play + "\n");
}
}
log.append("Lost in the " + lose + ". game.");
}
当我在应用程序中启动此功能时,程序将停止并且无法关闭。 我需要与任务管理器将其关闭。 一切都在一个框架中,所以我没有添加frame.add(..)。
查看Swing教程中有关具有临时结果的任务的部分。
它显示了如何使用SwingWorker
发布结果。 在示例中甚至使用硬币翻转。
因此,修改工作示例以使用JTextArea进行更新而不是使用文本字段。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.