我有一個應用程序,在更改後會出現一個綠色複選標記,表示更改成功。該應用程序有幾個可能的變化,我希望能夠讓複選標記在2.5秒後消失。我已經嘗試了幾件事情,如:使項目消失
panel.add(checkMark);
checkMark.setVisible(true);
panel.remove(checkMark);
checkMark.setVisible(false);
似乎沒有任何工作。我添加了一個timer
電話,然後是checkMark.setVisible(false)
,沒有任何東西似乎有幫助。
有人請指出我做錯了什麼嗎?以下是我的代碼:
//Create Change Role Button
final JButton changeRoleBtn = new JButton("Change Role");
changeRoleBtn.setBounds(50, 500, 150, 30);
changeRoleBtn.setToolTipText("Changes the role of the User");
changeRoleBtn.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
//Create Success Image
final ImageIcon i1 = new ImageIcon("/Users/vhaislsalisc/Documents/workspace/Role_Switcher/greenCheck.png");
final JLabel checkMark = new JLabel(i1);
checkMark.isOptimizedDrawingEnabled();
i1.paintIcon(changeRoleBtn, getGraphics(), 400,25);
checkMark.setVisible(true);
try
{
timer = new Timer(2000, new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
checkMark.setVisible(false);
timer.stop();
}
});
timer.start();
}
catch(Exception e5)
{
e5.printStackTrace();
timer.stop();
}
}
});
這是關於計時器的一點。其他代碼是相關的,因爲它包括我對圖形的聲明以及它如何被調用和使用。
try
{
timer = new Timer(2000, new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
checkMark.setVisible(false);
timer.stop();
}
});
timer.start();
}
catch(Exception e5)
{
e5.printStackTrace();
timer.stop();
}
請問您的200多行JDBC代碼與這個問題有什麼關係?另一方面,你甚至沒有用'Timer'來顯示你的嘗試,這是唯一重要的事情。 –
計時器的嘗試是200行代碼的一部分。 – DarthOpto
我的觀點正是:我甚至無法找到它。 –