2013-12-14 43 views
0

如何爲一個按鈕製作多個動作偵聽器?例如,我有一個名爲「Start」的按鈕,第一次單擊它在GUI「啓動」中打印出的按鈕,並且該按鈕的名稱應該更改爲「Stop」。當再次按下「停止」按鈕時,文本字段應該顯示「立即停止!!」,並且按鈕的名稱應該變回「開始」。這是我的代碼到目前爲止。 Eclipse不斷出現錯誤,所以我不能在第二次單擊「開始」按鈕後添加另一個偵聽器。如何在GUI中爲一個按鈕創建多個偵聽器?

import javax.swing.*; 

import java.awt.*; 
import java.awt.event.*; 


public class Driver { 

    private static JTextField textfield; 

    public static void main(String[]args) 
    { 
     JFrame frame = new JFrame(); 

     final JButton Start = new JButton("Start"); 
//  JButton Stop = new JButton("Stop"); 


     final int FIELD_WIDTH = 20; 
     textfield = new JTextField(FIELD_WIDTH); 

     frame.setLayout(new FlowLayout()); 

     textfield.setText("My cool program"); 

      Start.addActionListener(new 
      ActionListener() 
      { 
       public void actionPerformed(ActionEvent event) 
       { 
        Start.setText("Stop"); 
        textfield.setText("Starting up...."); 
       } 

      }); 


     frame.add(Start); 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     frame.add(textfield); 
     frame.setVisible(true); 
     frame.pack(); 
    } 

    private static ActionListener createGreetingButtonListener(String string) { 
     // TODO Auto-generated method stub 
     return null; 
    } 


} 
+2

開始通過閱讀錯誤消息。 –

回答

0

一個聽衆就夠了。你應該在偵聽器中定義一些計數器或布爾值,然後檢查它是哪一回合。

這是psevdo代碼:

click(){ 
    if(bool == true){ 
    set start 
    bool = false 
    } 
    else if(bool == false){ 
    set stop 
    bool = true 
    } 
} 
相關問題