请问JLabel可以设置大小么?
我把一个JLabel放到一个JPanel里面结果给这个JPanel加了一个border, 发现里头的空挡好大好大啊怎么解决啊?
谢谢

解决方案 »

  1.   

    setPreferredSize(new Dimension(你要得宽,你要得高));
      

  2.   

    请问JLabel也可以设计大小么?JLabel。setprefferredsize()?怎么一放到一个 Box 控件里, 大小就成了可伸缩的了?
      

  3.   

    从jdk1.5后setprefferredsize()就可以用了
      

  4.   

    1. JLabel 可以用 setPreferredSize() 设置大小。
    2. 如果 JLabel 放到容器里,会根据其容器的布局(Layout)自动改变其大小。一个组件在某个布局里是否会改变其大小,要看这个组件自身的特性和其父容器的特性。比如 JButton 在 FlowLayout 和 BoxLayout 里会保持大小,而在 BorderLayout 里会改变大小。
    3. 因此一个组件的呈现(大小和位置),除了与自身的特性有关外,还与其父容器的布局特性有关。
    4. 常用的布局有:BorderLayout, BoxLayout, CardLayout, FlowLayout, GridBagLayout, ...。当然,你也可以不使用布局管理器,xxx.setLayout(null); 这时,各组件需要完全自定义大小和位置。
      

  5.   

    谢谢各位的支持, Oracle_lover说的对
    我经过实践, 确实如此20分钟后结帖