实验6--输入-输出管理概要.ppt

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验6--输入-输出管理概要

操作系统原理实验 实验6 输入/输出管理 通过对操作系统鼠标处理、打印等的编程操作,了解操作系统输入/输出管理和应用程序设计方法 通过Linux输出重定向和管道操作以及对Linux声音设备的编程,提高设备管理的实际能力 实验6.1 Windows 鼠标处理 实验6.2 Windows 打印 实验6.3 Linux 重定向和管道 实验6.4 Linux 声音设备编程 §6.1 Windows 鼠标处理 实验估计时间:90分钟,难度系数:4 背景知识 一台计算机拥有大量的输入设备,而鼠标和键盘是其中最常用的输入设备。实际上,基本的鼠标和键盘处理就像使用Visual C++ 的Class Wizard在MFC程序中添加一两个消息响应函数一样简单 鼠标和键盘各自生成自己类型的消息。例如,鼠标生成类似WM_MOUSEMOVE、WM_LBUTTON和WM_RBUTTONCLK的Windows消息 背景知识 客户区的鼠标消息 客户区就是应用程序可在其中绘图的窗口部分。当鼠标指针滑过应用程序所拥有的窗口客户区时,Windows将把客户区鼠标消息传送给应用程序 使用诸如WM_MOUSEMOVE这类鼠标事件消息,鼠标就可以与应用程序通信。在用户移动鼠标经过应用程序窗口的客户区时,应用程序接收WM_MOUSEMOVE消息流,不仅通知用户正在移动鼠标,而且通知Windows生成WM_MOUSEMOVE消息时鼠标的位置 在鼠标移出应用程序窗口的客户区时,应用程序停止接收客户区鼠标消息。Windows改为把鼠标消息传送给鼠标碰巧经过的窗口 (包含桌面) 。当鼠标返回窗口的客户区时,Windows重新将鼠标消息传送给应用程序 背景知识 非客户区鼠标消息 Windows也会把非客户区鼠标消息传送给应用程序。当鼠标经过应用程序窗口客户区之外的区域时,就会产生这类鼠标消息 当鼠标经过窗口的标题栏或者控制按钮时,应用程序会接收非客户区鼠标消息。因为非客户区的鼠标消息最好由Windows自己来处理,所以大部分应用程序忽略这些消息。例如,用户双击窗口标题栏,Windows恢复上一次设置的窗口尺寸 通常不希望干涉Windows对非客户区鼠标消息的缺省处理,因为这样做会导致应用程序的窗口停止对用户期待的响应 实验目的 通过学习如何在Windows应用程序中添加对鼠标的支持 讨论Windows的鼠标编程技巧 了解Windows 2000输入/输出处理技术 工具/准备工作 在开始本实验之前,请回顾教科书的相关内容 您需要做以下准备 一台运行Windows 2000 Professional操作系统的计算机 计算机中需安装Visual C++ 6.0专业版或企业版 实验内容与步骤 §6.2 Windows 打印 实验估计时间:120分钟,难度系数:4 背景知识 传统的Windows打印程序设计 通过研究示例程序来了解传统Windows的打印过程 在Windows下,基本的打印过程有如下六步: 调用CreateDC() 函数获得打印机DC (设备描述环境) 调用StartDoc() 函数启动文档 调用StartPage() 函数打印一页 把文档提交给打印机DC 调用EndPage() 函数结束一页 对文档中要打印的每一页都重复步骤 3) 至 5) 调用EndDoc() 函数结束打印任务 背景知识 为确定与系统相连接的打印机的型号,应用程序必须有哪些信誉好的足球投注网站用户的WIN.INI文件或调用Windows的EnumPrinters() API函数。而调用EnumPrinters() 函数是最容易的方法 EnumPrinters() 函数的定义如下所示 BOOL EnumPrinters( DWORD Flags, LPTSTR Name, DWORD Level, LPBYTE pPrinterEnum, DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned, ) ; 背景知识 在MFC应用程序中打印文本 如果使用MFC AppWizard来组装应用程序,可以十分容易地获得基本的打印和打印预览功能 为了获得这种功能,要确保在AppWizard的“Step 4 of 6”对话框中选择“Printing and print preview (打印和打印预览) ”选项,使AppWizard应用程序可获得打印机的名称和获取打印机DC的所有细节。读者只需要改进所生成的源代码就能够为应用程序产生适当的打印输出 背景知识 使用MFC的缺省打印功能时,应用程序的文档都在OnDraw() 函数中

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档