actionListener
JButton
JFrame
victim==playerTwo
是对此方法的调用。当victim==playerOne
时,它是正确的。但是,当JLabel
时,JLabel
图片向错误的方向移动。在第一个场景中,if(victim==playerTwo)
{
ActionListener taskPerformer = new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
if(pic.getLocationOnScreen().x>1300)
{
((Timer)evt.getSource()).stop();
}
pic.setIcon(icon);
pic.setLocation((pic.getLocationOnScreen().x+5),45);
}
};
new Timer(delay, taskPerformer).start();
}
else
{
pic.setLocation(1000,500);
ActionListener taskPerformer = new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
if(pic.getLocationOnScreen().x<0)
{
((Timer)evt.getSource()).stop();
}
pic.setIcon(icon);
pic.setLocation(((pic.getLocationOnScreen().x)-5),500);
}
};
new Timer(delay, taskPerformer).start();
}
应该向右移动,而在第二个场景中向左移动。如果您有任何疑问,请与我们联系,并感谢您提供的任何帮助。
<form id="myform" action="https://mq-aws-us-east-1-2.iron.io/3/projects/575526342343c707/queues/testQueue1/messages?oAuth=3b33k3i4pf689wpCvQZ9CO method="get">
<a onclick="document.getElementById('myform').submit();">Send Request to IronMQ</a>
</form>
答案 0 :(得分:0)
您似乎混淆了getLocation
和getLocationOnScreen
getLocation
使用相对于父组件 getLocationOnScreen
使用相对于屏幕 这是一种在屏幕上移动应用程序变得更加明显的问题类型。
更改代码以坚持父坐标系应解决此问题:
pic.setLocation(((pic.getLocation().x)-5),500); // or +5 for player2