Java利用弹簧控制组件大小


Java利用弹簧控制组件大小:

  1. package com.han;  
  2.   
  3. import java.awt.Container;  
  4.   
  5. import javax.swing.JButton;  
  6. import javax.swing.JFrame;  
  7. import javax.swing.Spring;  
  8. import javax.swing.SpringLayout;  
  9. import javax.swing.SpringLayout.Constraints;  // Constraints为SpringLayout的内部类   
  10.   
  11. /** 
  12.  * 利用弹簧控制组件大小 
  13.  * @author HAN 
  14.  * 
  15.  */  
  16. public class SpringLayout_2 extends JFrame {  
  17.   
  18.     /** 
  19.      *  
  20.      */  
  21.     private static final long serialVersionUID = -5240773865528158419L;  
  22.   
  23.     public SpringLayout_2() {  
  24.         // TODO Auto-generated constructor stub   
  25.         Container container = getContentPane();  
  26.         SpringLayout springLayout = new SpringLayout();  
  27.         container.setLayout(springLayout);  
  28.         JButton buttonL = new JButton("buttonL");  
  29.         JButton buttonR = new JButton("buttonR");  
  30.         container.add(buttonL);  
  31.         container.add(buttonR);  
  32.         Spring vST = Spring.constant(5);  
  33.         Spring hSP = Spring.constant(1060100);  
  34.           
  35.         springLayout.putConstraint(SpringLayout.NORTH, buttonR, 0,   
  36.                 SpringLayout.NORTH, buttonL);  
  37.         springLayout.putConstraint(SpringLayout.NORTH, buttonL, vST,   
  38.                 SpringLayout.NORTH, container);  
  39.         springLayout.putConstraint(SpringLayout.WEST, buttonL, hSP,   
  40.                 SpringLayout.WEST, container);  
  41.         springLayout.putConstraint(SpringLayout.EAST, container, hSP,   
  42.                 SpringLayout.EAST, buttonR);  
  43.         springLayout.putConstraint(SpringLayout.WEST, buttonR, Spring.scale(hSP, 2),   
  44.                 SpringLayout.EAST, buttonL);  
  45.           
  46.         Spring heightST = Spring.constant(60);  
  47.         Spring widthSP = Spring.constant(60300600);   
  48.         Constraints buttonLConstraints = springLayout.getConstraints(buttonL);  
  49.         buttonLConstraints.setHeight(heightST);  
  50.         buttonLConstraints.setWidth(widthSP);  
  51.         Constraints buttonRConstraints = springLayout.getConstraints(buttonR);  
  52.         buttonRConstraints.setHeight(heightST);  
  53.         buttonRConstraints.setWidth(widthSP);  
  54.           
  55.     }  
  56.   
  57.     /** 
  58.      * @param args 
  59.      */  
  60.     public static void main(String[] args) {  
  61.         // TODO Auto-generated method stub   
  62.         SpringLayout_2 frame = new SpringLayout_2();  
  63.         frame.setTitle("利用弹簧控制组件大小");  
  64.         frame.setVisible(true);  
  65.         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
  66.         frame.setBounds(100100600300);  
  67.     }  
  68.   
  69. }  

相关内容