主要内容 ·对交互应用系统实现三个层次上的支持 口窗口系统对交互应用系统实现的支持; 口软件开发环境对交互应用系统实现的支持; 口用户界面管理系统UIMS 山求水器 SHANDONG UNIVERSETY
主要内容 ◼ 对交互应用系统实现三个层次上的支持 ❑ 窗口系统对交互应用系统实现的支持; ❑ 软件开发环境对交互应用系统实现的支持; ❑ 用户界面管理系统UIMS
课程目标 掌握窗口系统结构,交互事件处理方法,了解交互组 建开发包和交互框架,掌握MVC模式。 ·掌握UMS的对话独立性和表示方法。 山求水器 SHANDONG UNIVERSETY
课程目标 ◼ 掌握窗口系统结构,交互事件处理方法,了解交互组 建开发包和交互框架,掌握MVC模式。 ◼ 掌握UIMS的对话独立性和表示方法
6.3窗口系统 ·窗口系统强调为程序员提供硬件设备独立性 可以使交互系统的开发变得简单 使交互系统的移植非常方便 窗口系统为单一输入输出设备建立多个抽象 设备来实现其资源的共享 山求水器 SHANDONG UNIVERSETY
6.3 窗口系统 ◼ 窗口系统强调为程序员提供硬件设备独立性 ❑ 可以使交互系统的开发变得简单 ❑ 使交互系统的移植非常方便 ◼ 窗口系统为单一输入输出设备建立多个抽象 设备来实现其资源的共享
6.3.1窗口系统结构 三种不同结构 口在各个应用程序内部实现和管理多任务 ·移植起来不方便 ■应用程序处理复杂 口在操作系统核心集中处理多任务管理 过分的依赖操作系统 ■移植起来不方便 多任务的管理可由独立的管理程序进行管理 应用程序通过调用该管理程序提供的接口来实现对多任务的 管理和设备的独立性操作 最容易移植的 山求水器 SHANDONG UNIVERSETY
6.3.1窗口系统结构 ◼ 三种不同结构 ❑ 在各个应用程序内部实现和管理多任务 ◼ 移植起来不方便 ◼ 应用程序处理复杂 ❑ 在操作系统核心集中处理多任务管理 ◼ 过分的依赖操作系统 ◼ 移植起来不方便 ❑ 多任务的管理可由独立的管理程序进行管理 ◼ 应用程序通过调用该管理程序提供的接口来实现对多任务的 管理和设备的独立性操作 ◼ 最容易移植的
客户 客户应用程序 客户应用程序 客户应用程序 抽象终端 抽象终端 抽象终端 服务器 资源管理器 设备驱动程序 设备 窗口2 鼠标 窗口1 键盘 窗口n 独立的管理程序的客户/服务器结构 山求大器 SHANDONG UNIVERSETY
客户 客户应用程序 客户应用程序 ﹒﹒﹒ 客户应用程序 抽象终端 抽象终端 ﹒﹒﹒ 抽象终端 资源管理器 设备驱动程序 服务器 设备 鼠标 窗口1 窗口2 窗口n 键盘 独立的管理程序的客户/服务器结构
窗口系统由在服务器端运行的三部分程序组成 资源管理器,是整个窗口系统的核心,负责多任务的管理 并通过设备驱动程序来管理外部设备。 设备驱动程序,负责外部设备的驱动,接受输入设备的输入 并将输入数据转换成统一的格式,通过设备驱动程序实现 设备的独立性。 抽象终端,负责和客户应用程序的接口,对每个应用程序由 窗口管理程序为其分配一个抽象终端。 山某方器 SHANDONG UNIVERSETY
◼ 窗口系统由在服务器端运行的三部分程序组成 ❑ 资源管理器,是整个窗口系统的核心,负责多任务的管理, 并通过设备驱动程序来管理外部设备。 ❑ 设备驱动程序,负责外部设备的驱动,接受输入设备的输入 ,并将输入数据转换成统一的格式,通过设备驱动程序实现 设备的独立性。 ❑ 抽象终端,负责和客户应用程序的接口,对每个应用程序由 窗口管理程序为其分配一个抽象终端
6.3.2交互事件处理 ·1)应用程序内部事件处理循环 服务器把用户的输入作为事件送给客户应用程序 ▣客户应用程序对传给它的所有的事件都做出响应,不同的 事件采取不同的处理 ▣早期的基于窗口系统的开发往往采用这种方式 山求水器 SHANDONG UNIVERSETY
6.3.2交互事件处理 ◼ 1)应用程序内部事件处理循环 ❑ 服务器把用户的输入作为事件送给客户应用程序 ❑ 客户应用程序对传给它的所有的事件都做出响应,不同的 事件采取不同的处理 ❑ 早期的基于窗口系统的开发往往采用这种方式
客户应用程序 开始 读输入 服务器 设备 处理输入 退出 应用程序事件处理循环 结束 山求水器 SHANDONG UNIVERSETY
设备 客户应用程序 开始 读输入 处理输入 退出? 结束 服务器 应用程序事件处理循环
交互事件处理 2)事件注册方式 口事件处理过程 事件处理中心负责事件的处理 应用程序登记处理的事件 事件处理中心接收事件,把事件和控制转向该事件注册的回应过程 ■ 处理完后,回应过程把控制返还给事件处理中心 口优点: 应用程序不需要设计事件处理循环 事件处理中心处理事件的效率相对比较高 口Java事件处理机制示例程序 山求水器 SHANDONG UNIVERSETY
交互事件处理 ◼ 2)事件注册方式 ❑ 事件处理过程 ◼ 事件处理中心负责事件的处理 ◼ 应用程序登记处理的事件 ◼ 事件处理中心接收事件,把事件和控制转向该事件注册的回应过程 ◼ 处理完后,回应过程把控制返还给事件处理中心 ❑ 优点: ◼ 应用程序不需要设计事件处理循环 ◼ 事件处理中心处理事件的效率相对比较高 ❑ Java事件处理机制示例程序
应用程序 通知者 开始 向通知者注册回调函数 启动通知者 读输入 结束 处理事件 发送给正确的回调函数 否 请求回应 退出? 是 事件注册方式处理流程图 山束方图 SHANDONG UNIVERSETY
应用程序 开始 启动通知者 处理事件 读输入 请求回应 退出? 是 否 通知者 事件注册方式处理流程图 发送给正确的回调函数 向通知者注册回调函数 结束