setBounds(x,y,width,height)和setBounds(新的Rectangle(x,y,width,height))之间的差异

时间:2018-05-09 13:16:06

标签: java swing awt

当我们使用Java的setBounds(x,y,width,height)方法时,如果我们更改机器(不同大小的显示器或任何多种尺寸的显示设备)和{{{}},那么组件可能会在不同地方发生变化1}}方法不会遇到同样的问题。 如果我说的是正确的,有人可以帮助理解这个吗?

2 个答案:

答案 0 :(得分:1)

这是第二种方法的实现:

public void setBounds(Rectangle r) {
    setBounds(r.x, r.y, r.width, r.height);
}

所以回答你的问题:他们是完全相同的。

答案 1 :(得分:1)

  

setBounds(x,y,width,height)和setBounds(新的Rectangle(x,y,width,height))之间的差异

方法的作用没有区别。它们只是重载方法,它们接受不同的参数但执行相同的任务。

如果您查看Java文档:

  

public void setBounds(Rectangle r)

     

设置此Rectangle的边界Rectangle以匹配指定的Rectangle。   包含此方法是为了完整性,以与Component的setBounds方法并行。

  

public void setBounds(int x,                是的,                整数宽度,                int height)

     

将此Rectangle的边界Rectangle设置为指定的x,y,width和height。   包含此方法是为了完整性,以与Component的setBounds方法并行。