现在再做一个日程管理程序,准备用一个jbutton数组来显示事件。因为要对每个事件进行直接操作,因此jbutton数组的index是有意义的。问题是如何用一个函数实现监听的代码,最好是按下一个button,可以知道它的index,从何对不同时间进行操作。部分代码如下:private void changeToDayView()
    {
     viewPattern=dayView;
     view.removeAll();
     view.setVisible(false);
     int i=0;
     ArrayList id = new ArrayList();
     Iterator iter = db.dateMap.entrySet().iterator(); 
while (iter.hasNext()) {
Map.Entry entry = (Map.Entry) iter.next(); 
    Object key = entry.getKey();
    Date val = (Date) entry.getValue();
    if(val.day==viewDayNum){
     id.add(key);
     System.out.println(key);
     view.add(new JButton(val.startTime+"  "+val.title +" ")); 
    }
}
     view.setVisible(true);   
    }这里还没有用到jbutton数组,关键是不知道该怎么写。请大家帮忙看看。

解决方案 »

  1.   

    我觉得不如用一个Hashtable来保存JButton。根据你的具体操作的实现,可以把Jbutton作为key,具体操作的实现作为value。这样在点击操作后,很方便可以找到该如何做接下来的操作。
      

  2.   

    button.setActionCommand(""+index);
    JButton button = (JButton)e.getSource();int index = Integer.valueOf(button.getActionCommand());
      

  3.   

    我是Java初学的,我想问下,JButton类可以转换为Button类吗?我查了下帮助文档他们里面的方法是不同的。而.setActionCommand(String s)这方法是Button类里面的,JButton类里面没有。
      

  4.   

    JButton 从 javax.swing.AbstractButton 继承 setActionCommand 方法。