本章小结
本章主要介绍了窗体界面设计原则,窗体菜单、工具栏、状态栏及多文档窗体的制作和使用,菜单和工具栏是本章学习的重点,多文档窗体的设计是本章的难点。
开发应用程序时,用户界面的设计十分重要。在设计用户界面时,风格要一致、布局要合理、要提供适当的提示信息,尽量满足用户的需求。
通过本章学习,应该了解设计用户界面的一般原则;掌握菜单和工具栏的创建和使用;掌握控件的停靠与锚定方法;掌握MDI窗体的设计。
作业/实验 实验七 用户界面设计
一、实验目的:
1. 掌握主菜单、弹出式菜单的制作; 2. 掌握工具栏的制作; 3. 掌握状态栏的制作。 二、实验学时:2学时 三、实验内容:
1、制作学生成绩管理系统主界面,如下图所示
四、实验内容与提示
必做部分
1、主菜单的内容构成(提示:使用MenuStrip控件) 顶级菜单:系统管理
子菜单:添加用户
密码修改 权限管理
———— 退出
顶级菜单:数据维护
子菜单:学生信息维护 教师信息维护 课程信息维护 顶级菜单:教学管理
子菜单:教师任课 学生选课 成绩录入 打印成绩单 顶级菜单:成绩查询
子菜单:学生成绩查询
课程成绩分析
顶级菜单:帮助
子菜单:软件介绍 使用说明 顶级菜单:窗口
子菜单:层叠 纵向排列 横向排列
2、快捷菜单:(提示:使用ContexMenuStrip控件)
右键单击主窗体空白处,弹出右键快捷菜单,菜单项为“退出系统”,并实现其功能代码 退出系统程序代码:Application.exit()
3、工具栏如下图所示(提示:使用ToolStrip控件,按钮图片使用默认效果)
设置工具栏按钮的显示方式(DisplayStyles)为图片和文本(image&text) 4、状态栏(提示:使用StatusStrip控件,再其上添加两个状态栏标签): (1)显示当前系统时间,并随系统时间同步更新显示(Timer控件的使用) (2)版权所有:姓名+学号
5、主窗体和子窗体:
(1)设置上面的窗体为主窗体(提示:IsMDIContainer属性),主窗体运行时默认为最大化 (2)添加工具栏按钮对应的三个子窗体:学生选课子窗体、成绩录入子窗体、成绩查询子窗体,三个子窗体中不用放置具体的控件,只需修改对应的窗体标题即可。
点击工具栏按钮,则弹出对应的子窗体,要求子窗体显示在主窗体中(提示:为子窗体指定父窗体),若菜单中有对应的三个菜单项,则也实现这三个菜单项的功能。 6、实现“窗口”主菜单中三项子菜单的功能 提示:使用窗体的LayoutMdi方法实现
方法参数:MdiLayout.Cascade为层叠排列 MdiLayout.TileVertical为纵向排列
MdiLayout.TileHorizontal为横向排列
课下选做题:为学生成绩管理系统设计一个系统登陆页面,参考界面如下图所示:
要求:(1)设置用户权限有“管理员”、“教师”、“学生”三种
(2)用户名、密码、权限均无误的时候弹出学生成绩管理页面
要求:若登陆用户的身份为管理员,则可以使用主窗体中的所有菜单项和工具按钮 若登录用户的身份为教师,则顶级菜单“系统管理”、“数据维护”和“教学管理”中的“教师任课”、“学生选课”子菜单不可见
若登录用户的身份为学生,则可以使用的菜单为:“教学管理”中的“学生选课”、“打印成绩单”选项和“成绩查询”、“帮助”、“窗口”顶级菜单为可见 提示:将用户信息用结构体数组来表示和存储 设置某一菜单不可见用Visible属性