歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Java利用彈簧控制組件大小

Java利用彈簧控制組件大小

日期:2017/3/1 10:16:08   编辑:Linux編程

Java利用彈簧控制組件大小:

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