| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 483 人关注过本帖
标题:[求助]事件问题
取消只看楼主 加入收藏
jlu_cg
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-7-3
收藏
 问题点数:0 回复次数:5 
[求助]事件问题

import javax.swing.*;

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

public class UsedPane extends JFrame implements MouseListener{
int toolFlag = 1;
int count = 0;
boolean isMove = false;
JToolBar tools = new JToolBar("工具");
JButton tool;
JButton addTool = new JButton("add");
public UsedPane(){
setLayout(new BorderLayout());
tools.add(addTool);
add(tools,BorderLayout.CENTER);
addTool.addMouseListener(this);
addTool.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent et){
tool = new JButton(String.valueOf(count));
isMove = true;
tools.add(tool);
count++;
}
});
}
public void mouseClicked(MouseEvent e){}
public void mousePressed(MouseEvent e){
if(isMove){
tool.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent et){
toolFlag = count-1;
System.out.println(toolFlag);
}});
isMove = false;
}
}
public void mouseReleased(MouseEvent e){}
public void mouseEntered(MouseEvent e){
}
public void mouseExited(MouseEvent e){
}

public static void main(String[] args){
UsedPane a = new UsedPane();
a.setSize(400,100);
a.setVisible(true);
}
}

我想让添进去的按钮点时输出按钮上的值,但为什么都为最后一个按钮的值呢????
清高手指点一下~~~~~

搜索更多相关主题的帖子: public import false count 
2006-09-16 13:32
jlu_cg
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-7-3
收藏
得分:0 

不是,是添加的按钮显示自己按钮上的值~~~~~


2006-09-16 15:44
jlu_cg
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-7-3
收藏
得分:0 
例如我点了add按钮6次,添加了从0--5六个按钮,我按0按钮时输出0,1输出1,等等~~~~~

2006-09-16 15:47
jlu_cg
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-7-3
收藏
得分:0 

终于想到了,代码:
import javax.swing.*;

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

public class UsedPane extends JFrame implements MouseListener{
String toolFlag = "";
int count = 0;
boolean isPress = false;
JToolBar tools = new JToolBar("工具");
JButton tool;
JButton addTool = new JButton("add");
public UsedPane(){
setLayout(new BorderLayout());
tools.add(addTool);
add(tools,BorderLayout.CENTER);
addTool.addMouseListener(this);
addTool.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent et){
tool = new JButton(String.valueOf(count));
count++;
isPress = true;
tools.add(tool);
if(isPress){
tool.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent et){
toolFlag = et.getActionCommand();
System.out.println(toolFlag);
}});}
}
});
}
public void mouseClicked(MouseEvent e){}
public void mousePressed(MouseEvent e){

isPress = false;

}
public void mouseReleased(MouseEvent e){}
public void mouseEntered(MouseEvent e){
}
public void mouseExited(MouseEvent e){
}

public static void main(String[] args){
UsedPane a = new UsedPane();
a.setSize(400,100);
a.setVisible(true);
}
}


2006-09-16 16:29
jlu_cg
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-7-3
收藏
得分:0 
对啊~~~~
原来的事件添加有问题,我想了两天,郁闷着呢??
还好今天想出来了,呵呵~~~~~~

2006-09-16 18:10
jlu_cg
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-7-3
收藏
得分:0 
呵呵~~~~~
谢谢~~~

2006-09-18 08:36
快速回复:[求助]事件问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012668 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved