import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.*;
import java.awt.color.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.BevelBorder;public class Time extends JFrame implements ActionListener {
private JLabel jl;
JButton bt;
public Time() {
   jl=new JLabel();
   jl.setLocation(20,30);
   jl.setSize(80,50);
   jl.setBorder(new BevelBorder(BevelBorder.LOWERED,Color.white,Color.black));
   jl.setHorizontalAlignment(JLabel.CENTER);
   jl.setForeground(Color.blue);
   this.setLayout(null);
   this.setLocation(450,300);
   this.setSize(200,150);
   this.setTitle("时间");
   this.setResizable(false);
   this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   this.getContentPane().add(jl);
   this.setVisible(true);    
setLayout(null); 
bt=new JButton("加1秒");
bt.setBounds(110,30,70,50); 
bt.addActionListener(this);
this.add(bt);   
   Timer t= new Timer(99999999,this);
   t.setInitialDelay(0);
   t.start();
   int hour=3;
   int minute=9;
   int second=50;
   second= (second+1)%60; 
if(second==0) 

minute = (minute+1)%60; 
if(minute == 0) 
{  
   hour=(hour+1)%24; 
}  
}   
   String h=hour<10?"0":"";
   String m=minute<10?"0":"";
   String s=second<10?"0":"";
   String time=h+hour+":"+m+minute+":"+s+second;
   jl.setText(time);
   jl.repaint();
}  public  static void main(String[] args) {
   new Time();
   
   
}
public void actionPerformed(ActionEvent e)
{ }
}我写到这里不会写了,就是说按钮代码啊没有编辑好...目的就是按一下按钮 second+1 并且即刻显示出来嘛..求高手指教~

解决方案 »

  1.   

     明天帮你改,今天这里没eclipse,不好意思
      

  2.   

    import java.awt.Color; 
    import java.awt.event.ActionEvent; 
    import java.awt.event.ActionListener; 
    import java.awt.*; 
    import java.awt.color.*; 
    import java.awt.event.*; 
    import javax.swing.*; 
    import javax.swing.border.BevelBorder; public class Time extends JFrame implements ActionListener 

    private JLabel jl; 
    private JButton bt; 
    public Time()

      jl=new JLabel("          "); 
      jl.setBackground(Color.red);
      jl.setLocation(20,30); 
      jl.setSize(80,50); 
      jl.setBorder(new BevelBorder 
      (BevelBorder.LOWERED,Color.white,Color.black)); 
      Container con=getContentPane();
      con.setLayout(new FlowLayout());
      con.add(jl);
      jl.setHorizontalAlignment(JLabel.CENTER); 
      jl.setForeground(Color.blue); 
      setLocation(450,300); 
      setSize(200,150); 
      setTitle("时间"); 
      //setResizable(false); 
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
      setVisible(true);    
      bt=new JButton("加1秒"); 
      con.add(bt);
      bt.addActionListener(this);  
      Timer t= new Timer(99999999,this); 
      t.setInitialDelay(0); 
      t.start(); 
      jl.setText(setLabelText()); 
      }
    int hour=3; 
    int minute=9; 
    int second=50; 
    public int setSecond()
    {
    return second++;
    }
    public String setLabelText()
    {       
      String time=hour+":"+minute+":"+second;
      if(second>=60) 
      {
      if(minute<60)
         minute+=1;
      else
      if(hour<24)
      hour+=1;
      else hour=hour%24;
      second=second%60;
      }
     /* if(second==0) 
      { 
       minute = (minute+1)%60; 
      if(minute == 0) 
      { 
      hour=(hour+1)%24; 
      } 
      }*/
     /* String h=hour <10?"0":""; 
      String m=minute <10?"0":""; 
      String s=second <10?"0":""; */
     return time; 
       
    }
      public  static void main(String[] args) { 
      new Time(); 
      
      

    public void actionPerformed(ActionEvent e) 
    {
    if(e.getSource()==bt)
    {
    setSecond();
    jl.setText(setLabelText());
    }

      

  3.   

    只是建议setVisible(true);写在构造函数最后
      

  4.   

    为相应的button写actionPerform方法