setbounds和setsize区别
时间: 2023-04-22 22:02:28 浏览: 105
setBounds和setSize都是Java中用于设置组件大小的方法,但是它们有一些区别。
setBounds方法可以设置组件的位置和大小,它需要四个参数:x、y、width和height,分别表示组件的左上角坐标和宽度、高度。例如:
```
JButton button = new JButton("Click me");
button.setBounds(10, 10, 100, 50);
```
这段代码将创建一个按钮,将其左上角放置在(10, 10)的位置,宽度为100,高度为50。
而setSize方法只能设置组件的大小,它只需要两个参数:width和height,分别表示组件的宽度和高度。例如:
```
JButton button = new JButton("Click me");
button.setSize(100, 50);
```
这段代码将创建一个按钮,将其大小设置为宽度为100,高度为50。
因此,setBounds方法可以设置组件的位置和大小,而setSize方法只能设置组件的大小。
相关问题
btnNewButton = new JButton("提交"); btnNewButton.setBounds(160, 90, 100, 30); btnNewButton.setSize() btnNewButton.setFont(new Font("宋体", Font.PLAIN, 16));改变按钮的大小
您可以使用 `setSize()` 方法来更改按钮的大小,例如:
```
btnNewButton.setSize(120, 40); // 设置按钮的宽度为120,高度为40
```
如果您只想改变宽度或高度,可以使用 `setPreferredSize()` 方法,例如:
```
btnNewButton.setPreferredSize(new Dimension(120, btnNewButton.getPreferredSize().height)); // 只更改宽度为120,高度保持不变
```
注意,如果您同时使用了 `setSize()` 和 `setBounds()` 方法,`setBounds()` 方法会覆盖 `setSize()` 方法,因为 `setBounds()` 方法可以设置按钮的位置和大小。所以您可以只使用 `setBounds()` 方法来设置按钮的位置和大小,例如:
```
btnNewButton.setBounds(160, 90, 120, 40); // 设置按钮的位置为(160, 90),宽度为120,高度为40
```
另外,您可以使用 `setFont()` 方法来设置按钮的字体,例如:
```
btnNewButton.setFont(new Font("宋体", Font.PLAIN, 16)); // 设置按钮的字体为宋体,大小为16
```
java的setbounds_java Swing组件setBounds()简单用法实例分析
好的,我了解您的问题。以下是对Java Swing组件setBounds()方法的简单用法实例分析:
setBounds()方法是Java Swing组件中常用的方法之一,它用于设置组件的位置和大小。该方法需要四个参数,分别是组件的x坐标、y坐标、宽度和高度。
下面是一个示例代码,演示如何使用setBounds()方法在Java Swing中设置组件的位置和大小:
```
import javax.swing.*;
public class SetBoundsExample {
public static void main(String[] args) {
// 创建一个 JFrame 对象
JFrame frame = new JFrame("Set Bounds Example");
// 创建一个 JButton 对象
JButton button = new JButton("Click Me!");
// 设置按钮的位置和大小
button.setBounds(50, 50, 100, 30);
// 将按钮添加到 JFrame 中
frame.add(button);
// 设置 JFrame 的大小和可见性
frame.setSize(200, 150);
frame.setVisible(true);
}
}
```
在上面的示例中,我们创建了一个JFrame对象,并在其中添加了一个JButton对象。然后,我们使用setBounds()方法设置按钮的位置和大小。最后,我们设置了JFrame的大小和可见性。
注意:setBounds()方法的参数是相对于其父组件的坐标和大小。如果没有设置父组件,则默认为整个窗口。
希望这个简单的示例能够帮助您理解setBounds()方法的用法。如果您有任何其他问题,请随时问我。