2010-05-22 42 views
4

我想創建一個消息框,它將在沒有用戶輸入的情況下自動關閉。我試着閱讀幾個Java教程。它是一個計時器類。但我找不到代碼示例。如何在java中創建自動關閉消息框

有人可以幫我做到這一點。一個小的代碼示例將沿着這些路線的偉大

回答

3

東西:

public class AutoDismiss implements Runnable, ActionListener 
{ 
    private JDialog dialog; 

    public AutoDismiss(JDialog dialog) 
    { 
     this.dialog = dialog; 
    } 

    @Override 
    public void actionPerformed(ActionEvent e) 
    { 
     dialog.dispose(); 
    }  

    // EDIT: in response to comment 
    static public void showMessageDialog(Component parent, Object message) { 
     // run all of this on the EDT 
     final JOptionPane optionPane = new JOptionPane(message); 
     String title = UIManager.getString("OptionPane.messageDialogTitle"); 
     int style = styleFromMessageType(JOptionPane.INFORMATION_MESSAGE); 
     final JDialog dialog = optionPane.createDialog(parent, title, style); 
     Timer timer = new Timer(5000, new AutoDismiss(dialog)); 
     timer.setRepeats(false); 
     timer.start(); 
     if (dialog.isDisplayable()) 
      dialog.setVisible(true); 
    } 
} 
+0

使用JOptionPane.showMessageDialog IM(NULL, 「謝謝。下一個客戶請..」); 此消息框。但有辦法從某個特定的時間關閉此消息框。請幫助我 – Nubkadiya 2010-05-22 12:26:30

+0

不是我所知道的,除非你能找到某種方法來獲得JDialog。這可能是最簡單的改變你的調用創建JOptionPane使用我上面張貼的類,我編輯。它然後可以用作下拉式替換。 – mdma 2010-05-22 12:46:02