承接此贴:
https://www.iteye.com/topic/1137293
https://www.iteye.com/topic/1138211
JComboBox 一个同样给我印象深刻的组件。
太久没来javaeye写文章了,关于之前那个FEIQQ,当时在聊天界面优化上,留下了一个小小的遗憾:“下拉框没进行UI优化”,但是当时一直没找到方法,后来方法是找到了,但一直没来javaeye写文章,今天在自己的博客(www.jiweichengzhu.com)无意中翻到了,复制过来写一篇教程。
JComboBox总共有三个部分组成:editor、button、popup,分别是:编辑区域、下拉按钮、下拉项区域,想要UI好看,那就要从这三个方面下手。
真丑啊,可以说,拉低美观的最主要原因就是这个按钮,其次是下拉框中的一些颜色搭配,就从这两个点入手了。
之前在iteye上也发表过其他组件优化的帖子(JTree的优化),里面提到了两个概念,一个是UI,一个是Renderer,这两个东西就是优化的代码所在了,在swing中,每个组件都会有一个UI,入口就是他里面的installUI()方法,也就是我们需要重写这个方法;Renderer的中文释义是“渲染”,他在swing中扮演渲染器的作用,UI负责调用它来渲染出每一个组件,里面会有一个get*CellRendererComponent()方法,这里用*号,是因为每个组件的名字都不一样,它会返回每个渲染后的单个元素。
给大家看看优化之后的效果:
不是我说,美观度提升的不是一星半点儿,案例中的颜色只是做参考,是我随便调整的,大家可以根据自己的喜好或者程序整体界面的UI色调自行调整,这样会更好看。
这里就不再一行行的贴代码了,直接将代码打包上传到附件,具体关于每一个组件如何进行优化分析的思路,大家可以转到:JComboBox界面优化图文教程
再扯一点儿题外话:
之前写的那个QQ,使用的是Oracle数据库(因为当时公司用的是Oracle,所以就顺手也用了这个),但是很多人貌似不怎么熟悉,老是跑来问我,索性就特意改了一个MySQL版本的,大家有需要的可以直接来下载:SwingQQ之FEIQQ的MySQL版本下载
大家如果对于FEIQQ还有疑问,可以加群交流:762325833,会经常分享一些学习资料和书籍。
觉着我的个人博客还可以的,也可以加群交流:686430774