点坐标到x和y坐标变量并不真正起作用

时间:2018-02-03 14:31:46

标签: java coordinates jbutton point

我只是尝试使用java swing组件对pong进行编程。

我的问题是,我需要将JButton(我的Paddle)的坐标存储在变量中,以便在移动时能够操纵Button的位置。

我试过这样做:

int posP1_x= paddel1.getLocation().getX(); //Error

编译时说,从double到int有一个有损转换。 (但是getX的retrun值应该是int,而Point-Class中的值也存储为int)。当我尝试将posP1_x声明为double并在控制台上打印变量值时,它总是打印0.0。但是当我直接打印paddel1.getLocation()。getX()时,它可以工作......

double posP1_x= paddel1.getLocation().getX(); //Works

System.out.println(paddel1.getLocation().getX());    //Prints double value eg 110.0

System.out.println(posP1_x);    //Prints double value  with 0. --> 0.0

在变量中保存JButton坐标的解决方案是什么。

谢谢你,祝你有愉快的一天

1 个答案:

答案 0 :(得分:1)

不要使用getX()。使用.x。就是这样。例如:

// either
int posP1_x= (int) paddel1.getLocation().getX();

// or
int posP1_x= paddel1.getLocation().x;

更重要的是,请查看之前发布的相关API 。如果您只是查看Point API,就可以得到答案。