软件开发案例分析(一)超市管理系统
业务逻辑 超市管理系统 基本档案管理 采购订货管理 仓库入库管理 仓库出库管理 人员管理 部门管理 供货商管理 销售商管理 货品档案管理 仓库管理 登 录 业务逻辑 删除、查询面板 (Panel/) bean DAO 数据库 添加、更新面板 ( Archive/ ) 数据操作 数据映射 总体设计——界面设计 功能主界面 RemoveButtomFrame ClockPanel JPanel JLabel CanlenderPanel MyJPanel BGPanel JPanel JPanel JLabel JScrollPanel JTree SamllScrollPanel 1 2 4 3 总体设计——主框架界面 设置框架属性,并创建、添加主面板 1. 创建时钟面板,并添加到主面板 2. 创建日历面板,并添加到主面板 4.调用getModuleButtonGroup( ),添加上方控制面板 3. 调用getContentPanel ( ),添加右下方功能面板 辅助控件JLabel等 JTree及其监听器 由JTree控制的内容面板 菜单面板SmallScrollPanel 添加按钮面板,并设定其为仅一行的网格布局 添加各按钮(GlassButton)及其监听器 总体设计——界面设计 RemoveButtomFrame MyJPanel JPanel BGPanel CalenderPanel SmallScrollPanel 主功能界面 JFrame JPanel JLabel ClockPanel JPanel JScrollPanel JTree JLabel JPanel 1 2 3 4 时钟 日历 功能 菜单 总体设计——界面设计 事件响应——监听器 tree.addTreeSelectionListener(new TreeSelectionListener() { @Override public void valueChanged(TreeSelectionEvent e) { if (!tree.isSelectionEmpty()) { TreePath selectionPaths = tree.getSelectionPath(); Object path = selectionPaths.getLastPathComponent(); DefaultMutableTreeNode node = (DefaultMutableTreeNode) path; String userObject = (String) node.getUserObject(); repaint(); if (userObject.equals(供货商管理)) { fristLabel.setText(“供货商管理”); // 改变功能区标题 sellPanel.removeAll(); // 清空功能区原有子面板 sellPanel.add(panelFeel.getMessage()); // 为功能区添加供货商子面板 } else if (userObject.equals(销售商管理)) { … } } }); 界面设计——时钟面板 获取时钟背景图片、中心点坐标 启动子线程 每个1秒,发送repaint事件 主线程 子线程 paint( ) drawClock( ) 界面设计——时钟面板 构造函数 。。 public ClockPanel() { setOpaque(false); //设置为不透明 background = new ImageIcon(getClass().getResource(“Core.png”)); //加载背景时钟图片 //计算时钟的中心(用于画时、分、秒针) int iconWidth = background.getIconWidth(); centerX = iconWid
您可能关注的文档
最近下载
- DB37_T 4811.3-2025 工业互联网标识解析 仪器仪表 第3部分:应用服务平台数据元规范.docx VIP
- 数据备份管理制度(3篇).docx VIP
- 洗胃技术操作要点及考核评分标准.pdf VIP
- 高清:2024年河南省高考对口升学汽车类专业课试题卷及参考答案.docx VIP
- DB37_T 4819-2025 燃料电池用氢气全过程信息追溯技术规范.docx VIP
- 中华人民共和国危险化学品安全法.pptx VIP
- 马克思励志名言马克思经典名言【精选80句】.doc VIP
- 基于PLC的备用电源自动投入装置控制系统的设计.pdf VIP
- 老年人能力评估师(高级)教学大纲和培训计划.docx VIP
- 市政学自考资料.pdf VIP
原创力文档

文档评论(0)