重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本文实例讲述了java Swing组件setBounds()简单用法。分享给大家供大家参考,具体如下:
10年的杨浦网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站的优势是能够根据用户设备显示端的尺寸不同,自动调整杨浦建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联从事“杨浦网站设计”,“杨浦网站推广”以来,每个客户项目都认真落实执行。先看API:
public void setBounds(Rectangle r)
移动组件并调整其大小,使其符合新的有界矩形 r。由 r.x 和 r.y 指定组件的新位置,由 r.width 和 r.height 指定组件的新大小
参数: r - 此组件的新的有界矩形
从API来看,该方法的作用相当于setLocation()
与 setSize()
的总和。在实际使用时,需将容器的layout设置为null,因为使用布局管理器时,控件的位置与尺寸是由布局管理器来分配的。需要注意的是,这时必须手动指定容器的尺寸,因为空的布局管理器会将容器自身的PreferredSize清零,导致容器无法在GUI上显示。因此,如果容器在上级容器中使用布局管理器排列,那么需使用setPreferredSize()
,如果容器在上级容器中仍然手动排列,那么对容器使用setBounds()
即可。
下面是测试demo:
package awtDemo; import java.awt.Dimension; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; public class setBoundsDemo { public static void main(String[] args) { // TODO Auto-generated method stub //设置panel的layout以及sieze JPanel jpanel = new JPanel(); System.out.println("default PreferredSize is " + jpanel.getPreferredSize()); System.out.println("default Size is " + jpanel.getSize()); jpanel.setLayout(null); System.out.println("In null layout, the PreferredSize is " + jpanel.getPreferredSize()); System.out.println("In null layout, the Size is " + jpanel.getSize()); jpanel.setPreferredSize(new Dimension(400, 400)); //添加按钮 JButton button11 = new JButton("setBounds"); JButton button12 = new JButton("setLocationAndSetSize"); button11.setBounds(20, 20, 100, 100); button12.setLocation(250, 250); button12.setSize(100, 100); jpanel.add(button11); jpanel.add(button12); // 设置窗体属性 JFrame frame = new JFrame("setBoundsDemo"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.add(jpanel); frame.pack(); frame.setLocationRelativeTo(null); frame.setVisible(true); } }