开发者社区> 余二五> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

java模仿qq好友面板的布局(BoxLayout问题)

简介:
+关注继续查看

   ..............
              JLabel ll = new JLabel(dlg.getNameText() + ":" + dlg.getIPText(), ii[index], JLabel.LEFT);
                        tmp = new JPanel();//将标签添加到这个面板中
                        tmp.setLayout(new FlowLayout(FlowLayout.CENTER));
                        tmp.setBackground(new Color(255, 0, 255));
                        
                        /*
                         *  BoxLayout布局简直是蛋疼的要命,一个面板X是BoxLayout布局,如果该面板添加一个面板Y的话
                         *  那么Y就会填充X面板!如果在添加一个面板Z, 那么Y, Z就会一起布满X面板!但是可以设置Y,Z面板
                         *  的比例! 如果X添加的是一个按钮或者标签时,还不能控制其大小.....无语了!
                         *  
                         *  下面的我的做法将标签添加到面板tmp中,然后再将tmp添加中QQP面板中!这样就可以控制标签的大小了!
                         *  再添加新的面板的时候,要设置一下之前面板的PreferredSize!保证每一个标签的距离适中!
                         *  也就是保证所有的添加的面板的高度之和 == QQP.getHeight();
                         * */
                        int cnt = QQP.getComponentCount();//显示QQ好友的个数!
                        if(cnt >= 1)
                            QQP.getComponent(cnt-1).setPreferredSize(new Dimension(250, 60));//60代表默认的标签的高度
                        int h = QQP.getHeight() - cnt*60;
                        if(h < 0) h=60;//如果所有的高度之和超高了QQP面板的高度,那么直接就是默认的高度,剩下的显示就交给垂直滚动条了!
                        tmp.setPreferredSize(new Dimension(250, h));
                        tmp.add(ll);
                        QQP.add(tmp);
                        QQP.add(tmp);
         ............//效果图见下!
复制代码









本文转自 小眼儿 博客园博客,原文链接:http://www.cnblogs.com/hujunzheng/p/3997486.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Java 实现阿里云直播推流在线列表查询
版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82788014 ...
2069 0
Java 实现阿里云直播
版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82788122 ...
5125 0
Java 实现阿里云短信
版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82788132 ...
2045 0
Java的基本数据类型在虚拟机中的实现
前言 首先我们做个小测验,通过下面代码来看看Java语言和Java虚拟机对boolean类型有什么不同: public class Foo { public static void main(String[] args...
1198 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
《阿里巴巴Java开发手册》英文版免费下载
立即下载
Java工程师必读手册
立即下载
从《阿里巴巴Java开发手册》编写推广谈技术成长
立即下载