首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Java 简易通讯录 第三版

自己对这个软件进行了一些改良:从界面和功能上。

以下内容推荐对比我前两个版本的源码查看:( 图片若不清晰请在手机端查看)

一、设置全局字体

上面是第二版的界面。默认样式不太好看。然后我都改成宋体了~

二、设置文本框及滚动条

之前的版本,当数据超过规定的尺寸时,就需要手动拉长软件,十分不方便。于是我加上了 JScrollPane,将水平滚动条设置为隐藏,垂直滚动条设置为自动显示,即当数据超出范围才会显示滚动条。

还有一个问题:当刷新出的数据超过范围时,滚动条会自动处于最下端,虽然说大部分情况是需要这样的,但是当在浏览一些文档的时候,最好还是从头开始。

解决方案:在超过范围的部分加上这句话就好了。

滚动条在第一个GIF图中的【使用帮助】页面可以看到。

三、设置组件间距:

原因:还是样式问题…有点别扭。右图增加了间距。

解决方案:查询使用的布局文档内的方法。

四、确认框与逻辑更改

在【初始化】这个模块内,添加了确认框功能,以防用户误删数据。同时缓和了,新建数据表与删除数据之间的矛盾。

原因:当用户第一次使用软件时,数据库还未建立,那么应该是建表语句。如果是用户想删除所以已有数据,那么应该是删除语句。但是他们之间的联系是,新建表内是没有数据的,删除所有数据后的表内也是没有数据的。执行他们的结果是一样的,没有数据的数据表。如果已存在表,那么第一个connect会报错然后退出,执行下面语句。如果未存在表,新建表之后再执行。

解决方案:去掉新建表的方法。精简代码。如下:

同时也用基本方法,将鼠标点击事件的逻辑更改了:以查找为例。

然后改成了这样: 将链接数据库模块与调用分离。

本来想让鼠标点击事件调用外部类,结果说是线程过多,于是就没有考虑了。

具体代码我均已经上传至我的 Github【someTools】项目内的【addressList】文件夹内。包含目前三版的源代码和 jar 文件。

END.

源码地址:https://github.com/evenIfAlsoGo/someTools/tree/master/addressList

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171209G0RX2600?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券