在简单学习了java的布局和一些界面的绘制方法后,我便开始有了跟着视频和书本的知识学做一个简单的餐饮系统,才能激发自己的编程和不断巩固知识。

我简单说明一下本次做的系统很普通但具有实用性,是通过java开发的针对外面的酒店或餐饮行业的系统,所以需求的客户是很多的,因为在身边的各种餐馆是很多的。利用这样的一个软件,软件是c/s结构,那么可以对餐饮店内的人事管理、菜品管理、成本利润控制、点菜订购管理、客服服务、结账等。那么完成的工作量还是巨大的,但是也是开发的必备。

在一周的学习和完善后,简单的完善了登录界面+初始菜单界面一部分,但是已经发现了很多问题。以下我就把我遇到的问题和解决思路讲一讲:

1.布局的选择

在做整个布局的选择时我们通常在基础的的一些程序上进行衍生就能很快知道我们的布局进行什么样的选择更加的适合。所以做一些简单的Demo是非常必要的,如同我们已经知道了车的模型,但是需要用什么样的架子或者材料才能完成,所以我写过的几大布局很有用。

下面是我采用的Jwindow做的登录前的界面(而设置方法已经写在我的布局中了),选用Jwindow可以得到一个没有外框感觉十分原始的窗体,这样的话接近平时我们使用的软件窗体。

2.线程的使用

这块我知识比较空缺所以也没写,简单的写了个等待函数,其实真是的界面应该有滚动效果,这样才能有用户等待的体验效果。但是我发现一件我已经忘却很久的事,如果想让图片动起来的话,可以选择动图进行处理,因为ps这样神奇的工具已经完全可以做出这样将需要动态展现的效果展示出来。所以就暂时不用线程偷个懒吧。但是仍然需要线程来控制时间,才能有GIF图的效果。

3.对整个布局的把握(Panel的运用是重点)

本次主界面采用5个panel,同时也在其中加入许多布局,(在选用效果同时需要设置各种布局的来使控件在合适的位置)。

下面是老师的布局设计(引用)

4.学会设置字体

考虑到全局的效果,在许多控件上有许多地方需要设置字体,但是每次都要调用方法设置字体明显很麻烦,想想网页上常用的CSS所以另写工具类然后调用工具类,对字体进行设置,而且同时最好设置为final属性。

5.学会设计自适应的panel

考虑的问题:

每次实现的的panel需要加载一些图片但是图片需要跟随panel的大小变化的话,就考虑写一个能判断容器大小的panel,在设置布局然后就可以制指定任意位置了。(转换考虑为工具类)

效果

问题(为什么还是暂居南面最少的一块):我觉得还是和布局有关吧。

已完成:已经完成状态栏和工具栏,下一步继续完成整体布局。

  日进一小步,月过一大步~~加油!!!

java(系统)实战1的更多相关文章

  1. Java秒杀系统实战系列~整体业务流程介绍与数据库设计

    摘要: 本篇博文是“Java秒杀系统实战系列文章”的第三篇,本篇博文将主要介绍秒杀系统的整体业务流程,并根据相应的业务流程进行数据库设计,最终采用Mybatis逆向工程生成相应的实体类Entity.操 ...

  2. Java秒杀系统实战系列~构建SpringBoot多模块项目

    摘要:本篇博文是“Java秒杀系统实战系列文章”的第二篇,主要分享介绍如何采用IDEA,基于SpringBoot+SpringMVC+Mybatis+分布式中间件构建一个多模块的项目,即“秒杀系统”! ...

  3. Java秒杀系统实战系列~商品秒杀代码实战

    摘要: 本篇博文是“Java秒杀系统实战系列文章”的第六篇,本篇博文我们将进入整个秒杀系统核心功能模块的代码开发,即“商品秒杀”功能模块的代码实战. 内容: “商品秒杀”功能模块是建立在“商品详情”功 ...

  4. Java互联网架构-Mysql分库分表订单生成系统实战分析

    概述 分库分表的必要性 首先我们来了解一下为什么要做分库分表.在我们的业务(web应用)中,关系型数据库本身比较容易成为系统性能瓶颈,单机存储容量.连接数.处理能力等都很有限,数据库本身的“有状态性” ...

  5. Java日志实战及解析

    Java日志实战及解析 日志是程序员必须掌握的基础技能之一,如果您写的软件没有日志,可以说你没有成为一个真正意义上的程序员. 为什么要记日志? •       监控代码 •       变量变化情况, ...

  6. Gerrit代码审计系统实战-Gerrit 2.15.14版本快速搭建

    Gerrit代码审计系统实战-Gerrit 2.15.14版本快速搭建  作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Gerrit版本选择 1>.查看Gerrit官网 ...

  7. 《Java 8实战》读书笔记系列——第三部分:高效Java 8编程(四):使用新的日期时间API

    https://www.lilu.org.cn/https://www.lilu.org.cn/ 第十二章:新的日期时间API 在Java 8之前,我们常用的日期时间API是java.util.Dat ...

  8. Linux系统实战项目——sudo日志审计

    Linux系统实战项目——sudo日志审计   由于企业内部权限管理启用了sudo权限管理,但是还是有一定的风险因素,毕竟运维.开发等各个人员技术水平.操作习惯都不相同,也会因一时失误造成误操作,从而 ...

  9. selenium2 Webdriver + Java 自动化测试实战和完全教程

    selenium2 Webdriver + Java 自动化测试实战和完全教程一.快速开始 博客分类: Selenium-webdriverselenium webdriver 学习selenium ...

  10. 获取Java系统相关信息

    package com.test; import java.util.Properties; import java.util.Map.Entry; import org.junit.Test; pu ...

随机推荐

  1. 单片机C程序优化

    单片机C程序优化 对程序进行优化,通常是指优化程序代码或程序执行速度.优化代码和优化速度实际上是一个予盾的统一.一般是优化了代码的尺寸,就会带来执行时间的增加:如果优化了程序的执行速度,通常会带来代码 ...

  2. java ssm 后台框架平台 项目源码 websocket即时聊天发图片文字 好友群组 SSM源码

    官网 http://www.fhadmin.org/D 集成安全权限框架shiro  Shiro 是一个用 Java 语言实现的框架,通过一个简单易用的 API 提供身份验证和授权,更安全,更可靠E ...

  3. 展开label,利用YYText实现文字显示不完末尾添加全文

    效果图: 操作 先github下载<YYText>文件导入, 代码如下: #import "ViewController.h" #import "YYLabe ...

  4. javascript初学者注意事项

    注:以下属于个人学习中的理解不能保证全部正确,如果有错误以后修正. 1.javascript和c#语言一样严格区分大小写,有没有类的概念. 2.所有的变量声明都使用var,虽然能打出蓝色int,但却不 ...

  5. Kali渗透测试1-Netcat

    What is Netcat? Netcat is a featured networking utility which reads and writes data across network c ...

  6. 2017-2018-1 20155313 《信息安全系统设计基础》 Myod

    2017-2018-1 20155313 <信息安全系统设计基础> Myod Myod要求 1.复习c文件处理内容 2.编写myod.c 用myod XXX实现Linux下od -tx - ...

  7. 用 GSL 求解超定方程组及矩阵的奇异值分解(SVD) 2

    接上一篇... 下面我们将 SVD 相关的功能封装成一个类,以方便我们提取 S 和 V 的值. 另外,当我们一个 A 有多组 x 需要求解时,也只需要计算一次 SVD 分解,用下面的类能减少很多计算量 ...

  8. CodeForces 985D Sand Fortress

    Description You are going to the beach with the idea to build the greatest sand castle ever in your ...

  9. 多栏布局与JS实现瀑布流

    css3属性之多栏布局与JS实现瀑布流 背景:之前打算自己总结一下flex布局的知识点,发现自己无从下手,原因在何处:我反思了一下,其实原因很简单,使用的次数少,更多的时间使用了百分比,浮动和定位解决 ...

  10. JMeter的__threadGroupName使用注意事项

    JMeter从4.1版本开始引入了一个新函数"${__threadGroupName}",这个函数的作用是返回当前线程组的名字.${__threadGroupName}的用途也较为 ...