Java利用弹簧控制组件大小

package com.han;

import java.awt.Container;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.Spring;
import javax.swing.SpringLayout;
import javax.swing.SpringLayout.Constraints;  // Constraints为SpringLayout的内部类

/**
 * 利用弹簧控制组件大小
 * @author HAN
 *
 */
public class SpringLayout_2 extends JFrame {

	/**
	 * 
	 */
	private static final long serialVersionUID = -5240773865528158419L;

	public SpringLayout_2() {
		// TODO Auto-generated constructor stub
		Container container = getContentPane();
		SpringLayout springLayout = new SpringLayout();
		container.setLayout(springLayout);
		JButton buttonL = new JButton("buttonL");
		JButton buttonR = new JButton("buttonR");
		container.add(buttonL);
		container.add(buttonR);
		Spring vST = Spring.constant(5);
		Spring hSP = Spring.constant(10, 60, 100);
		
		springLayout.putConstraint(SpringLayout.NORTH, buttonR, 0, 
				SpringLayout.NORTH, buttonL);
		springLayout.putConstraint(SpringLayout.NORTH, buttonL, vST, 
				SpringLayout.NORTH, container);
		springLayout.putConstraint(SpringLayout.WEST, buttonL, hSP, 
				SpringLayout.WEST, container);
		springLayout.putConstraint(SpringLayout.EAST, container, hSP, 
				SpringLayout.EAST, buttonR);
		springLayout.putConstraint(SpringLayout.WEST, buttonR, Spring.scale(hSP, 2), 
				SpringLayout.EAST, buttonL);
		
		Spring heightST = Spring.constant(60);
		Spring widthSP = Spring.constant(60, 300, 600); 
		Constraints buttonLConstraints = springLayout.getConstraints(buttonL);
		buttonLConstraints.setHeight(heightST);
		buttonLConstraints.setWidth(widthSP);
		Constraints buttonRConstraints = springLayout.getConstraints(buttonR);
		buttonRConstraints.setHeight(heightST);
		buttonRConstraints.setWidth(widthSP);
		
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		SpringLayout_2 frame = new SpringLayout_2();
		frame.setTitle("利用弹簧控制组件大小");
		frame.setVisible(true);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.setBounds(100, 100, 600, 300);
	}

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值