import java.awt.Component;
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import javax.swing.JButton;
import javax.swing.JFrame;
class buttonlistener implements ActionListener
{
public void actionPerformed(ActionEvent e){ JButton jb=(JButton)e.getSource();
int x=jb.getBounds().x;
int y=jb.getBounds().y;
int ht=jb.getBounds().height;
int wh=jb.getBounds().width; JButton down=(JButton)(jb.getComponentAt(x, y));
if(down!=null)
{
System.out.println(down.getText()); }
else
{ System.out.println(x);
System.out.println(y);
System.out.println(ht);
System.out.println(wh);
System.out.println("error");
}
}
}
public class test extends JFrame { public test()
{
Container c=getContentPane();
c.setLayout(new GridLayout(2,2));
JButton j2=new JButton("1");
buttonlistener bl2=new buttonlistener();
j2.addActionListener(bl2);
c.add(j2);
JButton j3=new JButton("2");
buttonlistener bl3=new buttonlistener();
j3.addActionListener(bl3);
c.add(j3);
JButton j4=new JButton("3");
buttonlistener bl4=new buttonlistener();
j4.addActionListener(bl4);
c.add(j4);
JButton j1=new JButton("");
c.add(j1);
} public static void main(String[] args) {
test tt=new test();
tt.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
tt.setSize(200,100);
tt.setVisible(true); } }
按第一个按钮结果是
1
按第二个按钮的结果是
96
0
33
96
error
按第三个按钮的结果是
0
33
33
96
error
不知道有什么错误
恳请帮助
谢谢
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import javax.swing.JButton;
import javax.swing.JFrame;
class buttonlistener implements ActionListener
{
public void actionPerformed(ActionEvent e){ JButton jb=(JButton)e.getSource();
int x=jb.getBounds().x;
int y=jb.getBounds().y;
int ht=jb.getBounds().height;
int wh=jb.getBounds().width; JButton down=(JButton)(jb.getComponentAt(x, y));
if(down!=null)
{
System.out.println(down.getText()); }
else
{ System.out.println(x);
System.out.println(y);
System.out.println(ht);
System.out.println(wh);
System.out.println("error");
}
}
}
public class test extends JFrame { public test()
{
Container c=getContentPane();
c.setLayout(new GridLayout(2,2));
JButton j2=new JButton("1");
buttonlistener bl2=new buttonlistener();
j2.addActionListener(bl2);
c.add(j2);
JButton j3=new JButton("2");
buttonlistener bl3=new buttonlistener();
j3.addActionListener(bl3);
c.add(j3);
JButton j4=new JButton("3");
buttonlistener bl4=new buttonlistener();
j4.addActionListener(bl4);
c.add(j4);
JButton j1=new JButton("");
c.add(j1);
} public static void main(String[] args) {
test tt=new test();
tt.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
tt.setSize(200,100);
tt.setVisible(true); } }
按第一个按钮结果是
1
按第二个按钮的结果是
96
0
33
96
error
按第三个按钮的结果是
0
33
33
96
error
不知道有什么错误
恳请帮助
谢谢
解决方案 »
- 如何打印双色球所有的注数
- Java桌面程序,左边是树——用swing相关知识,点击不同节点在树的右边显示不同内容,怎么做到?请知道的务必帮帮忙,谢谢!!!在线等!!
- 笔试题
- JTable如何设某行只读
- 有开发经验的26岁应届硕士对日软件外包工作,居然说年龄太大了。不懂日语且应届大专反而要的。自卑。。郁闷...迷茫。
- java.lang.reflect.Field 这是干什么的?
- javadoc怎么给包写注释?
- Java程序怎么打包??谢谢!!!
- 谁对java的图形技术比较熟悉的帮帮忙。
- 为什么出现错误:Error occurred during initialization of VM
- awt windowopened 不好用
- CachedRowSet查询结果显示问题
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JButton;
import javax.swing.JFrame;class buttonlistener implements ActionListener { public void actionPerformed(ActionEvent e) { JButton jb = (JButton) e.getSource();
int x = jb.getBounds().x;
int y = jb.getBounds().y;
int ht = jb.getBounds().height;
int wh = jb.getBounds().width; //JButton down = (JButton) (jb.getComponentAt(x, y));
JButton down = (JButton)(e.getSource());
if (down != null) {
System.out.println(down.getText()); } else {
System.out.println(x);
System.out.println(y);
System.out.println(ht);
System.out.println(wh);
System.out.println("error");
}
}}public class test1 extends JFrame { public test1() {
Container c = getContentPane();
c.setLayout(new GridLayout(2, 2));
JButton j2 = new JButton("1");
buttonlistener bl2 = new buttonlistener();
j2.addActionListener(bl2);
c.add(j2);
JButton j3 = new JButton("2");
buttonlistener bl3 = new buttonlistener();
j3.addActionListener(bl3);
c.add(j3);
JButton j4 = new JButton("3");
buttonlistener bl4 = new buttonlistener();
j4.addActionListener(bl4);
c.add(j4);
JButton j1 = new JButton("");
c.add(j1);
} public static void main(String[] args) {
test1 tt = new test1();
tt.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
tt.setSize(200, 100);
tt.setVisible(true); }}