thorpedosg

iS9LTZxW

Aug 6th, 2018
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.45 KB | None | 0 0
  1. Layouts in java Swing specifying size
  2. C
  3.  
  4. import java.awt.BorderLayout;
  5. import java.awt.Dimension;
  6.  
  7. import javax.swing.JComponent;
  8. import javax.swing.JPanel;
  9.  
  10. public class FixedSizeComponent extends JPanel {
  11. private Dimension size;
  12. private final JComponent content;
  13.  
  14. public FixedSizeComponent(JComponent content) {
  15. super(new BorderLayout());
  16. this.content = content;
  17. super.add(content, BorderLayout.CENTER);
  18. }
  19.  
  20. @Override
  21. public void setSize(Dimension d) {
  22. size = d;
  23. }
  24.  
  25. @Override
  26. public void setSize(int width, int height) {
  27. size = new Dimension(width, height);
  28. }
  29.  
  30. @Override
  31. public Dimension getSize() {
  32. if (size != null) return size;
  33. return content.getSize();
  34. }
  35.  
  36. @Override
  37. public Dimension getSize(Dimension rv) {
  38. if (size != null) {
  39. if (rv == null) rv = new Dimension();
  40. rv.height = size.height;
  41. rv.width = size.width;
  42. return rv;
  43. }
  44. return content.getSize(rv);
  45. }
  46.  
  47. @Override
  48. public Dimension getPreferredSize() {
  49. if (size != null) return size;
  50. return content.getPreferredSize();
  51. }
  52.  
  53. @Override
  54. public Dimension getMaximumSize() {
  55. if (size != null) return size;
  56. return content.getMaximumSize();
  57. }
  58.  
  59. @Override
  60. public Dimension getMinimumSize() {
  61. if (size != null) return size;
  62. return content.getMinimumSize();
  63. }
  64. }
Add Comment
Please, Sign In to add comment