0
我認爲這對我來說會簡單很多,但我錯過了這個概念。簡而言之,我提出了一種淡化音頻的方法,並使用Thread.Sleep讓它在for循環中「等待」。在調用該方法之前,我將幾個標籤和文本字段設置爲不可見,但它們一直等到線程休眠改變之後。我試圖將標籤封裝在一個do-while循環中強制它們,甚至試圖在它之後調用重繪,但它沒有解決任何問題。任何意見,將不勝感激:Redraw GUI Prior Thread.Sleep
編輯,包括的actionPerformed:
public void actionPerformed(ActionEvent e)
{
if(e.getSource() == quit)
{
System.exit(0);
}
else if(e.getSource() == play)
{
System.out.println("PLAY");
quit.setVisible(false);
quit.setEnabled(false);
play.setVisible(false);
play.setEnabled(false);
GameActivated();
}
else if(e.getSource() == submitTeams)
{
teamOneName = teamOneTF.getText();
teamTwoName = teamTwoTF.getText();
Swinpublic void actionPerformed(ActionEvent e)
{
if(e.getSource() == quit)
{
System.exit(0);
}
else if(e.getSource() == play)
{
System.out.println("PLAY");
quit.setVisible(false);
quit.setEnabled(false);
play.setVisible(false);
play.setEnabled(false);
GameActivated();
}
else if(e.getSource() == submitTeams)
{
teamOneName = teamOneTF.getText();
teamTwoName = teamTwoTF.getText();
SwingUtilities.invokeLater(new Runnable(){
public void run(){
teamOneLabel.setVisible(false);
teamOneTF.setVisible(false);
teamTwoLabel.setVisible(false);
teamTwoTF.setVisible(false);
submitTeams.setVisible(false);
}
});
}
else
System.out.println("Error: Button pressed with no known source.");
}
下面是AudioHandler1內部所調用:
for(int count = 0; count < 71; count++)
{
gainControl.setValue((float) count*-1);
System.out.println("Waiting!" + Math.random());
try
{
Thread.sleep(50);
}
catch(InterruptedException ex)
{
Thread.currentThread().interrupt();
}
}
我試圖把覆蓋的SwingWorker的ActionEvent的內部,略低於其中SwingUtilities的設置標籤假的,但我趕上了錯誤。你能舉個例子嗎? –
我也可以編輯我的帖子頂部,如果你只想看看我輸入什麼。 –
@MarshalAlessi什麼樣的錯誤 – Antoniossss