第1章 Windows程序设计基础
第1章
Windows程序设计基础
本章主要内容 介绍Windows平台下程序运行的内部机 制,涉及到一些术语,为进一步学习 MFC程序打下基础。
2013-9-9
2
1.1 API与SDK API: Windows操作系统提供了各种各样 的函数,以方便我们开发Windows应用 程序,这些函数是Windows操作系统提 供给应用程序编程的接口,即 Application Programming Interface,简称 API函数。可在MSDN中查到。 SDK: Software Development Kit,软件开 发包,是开发所需要资源的一个集合。 注:API和SDK已成为广泛使用的术语
2013-9-9 3
1.2 窗口与句柄 窗口:屏幕上的一块矩形区域,是 Windows应用程序与用户进行交互的接 口。利用窗口,可以接收用户的输入, 以及显示输出。 句柄(HANDLE):在Windows程序中, 有各种各样的资源(窗口、图标、光标 等),系统在创建这些资源时会为它们分 配内存,并返回标识这些资源的标识号 (整数)。 HWND HICON HCURSOR HBURSH…
用于将虚拟键消息转换为字符消息。
DispatchMessage函数 分派一个消息到窗口过程,由窗口过 程函数对消息进行处理。
2013-9-9 15
应用程序 (2)GetMessage(…)
(3)DispatchMessage(…)
窗口过程
消息队列
(1) (4) 操作系统 Windows应用程序的消息处理机制2013 Nhomakorabea9-9 12
窗口类的类型
在我们的程序中经常要用到一类变量,这个变量里的每一位(bit) 都对应某一种特性。当该变量的某位为1时,表示有该位对应的 那种特性,当该位为0时,即没有该位所对应的特性。当变量中 的某几位同时为1时,就表示同时具有几种特性的组合。一个变 量中的哪一位代表哪种意义,不容易记忆,所以我们经常根据 特征的英文拼写的大写去定义一些宏,该宏所对应的数值中仅 有与该特征相对应的那一位(bit)为1,其余的bit都为0。我们 使用goto definition就能发现CS_VREDRAW=0x0001, CS_HREDRAW=0x0002,CS_DBLCLKS =0x0008, CS_NOCLOSE=0x0200。他们的共同点就是只有一位为1,其余 位都为0。如果我们希望某一变量的数值既有CS_VREDRAW特 性,又有CS_HREDRAW特性,我们只需使用二进制OR(|)操 作符将他们进行或运算相组合,如style=CS_VREDRAW | CS_HREDRAW | CS_NOCLOSE。如果我们希望在某一变量原有 的几个特征上去掉其中一个特征,用取反(~)之后再进行与 (&)运算,就能够实现,如在刚才的style的基础上去掉 CS_NOCLOSE特征,可以用style & ~CS_NOCLOSE实现。
2013-9-9 10
Step 1 设计一个窗口类 一个完整的窗口具有许多特征,包括光 标、图标、背景色等,完成设计后还要 起一个名字。Windows已经为我们定义 好了一个窗口所应具有的基本属性 (WNDCLASS),我们只需要像做填空一 样将需要填充的部分填写完整,一种窗 口就设计好了。
);
2013-9-9
9
1.4.2 窗口的创建 创建一个完整的窗口需要经过下面四 个操作步骤: 1. 设计一个窗口类WNDCLASS 2. 注册窗口类RegisterClass() 3. 创建窗口CreateWindow() 4. 显示及更新窗口 ShowWindow() UpdateWindow()
2013-9-9 5
操作系统是怎样将感知到的事件传递给应用程序的呢? 这是通过消息机制(Message)来实现的。操作系统将每 个事件都包装成一个称为消息的结构体MSG来传递给 应用程序,参看MSDN。 MSG结构定义如下: typedef struct tagMSG { HWND hwnd; UINT message; WPARAM wParam; LPARAM lParam; DWORD time; POINT pt; } MSG;
2013-9-9
11
typedef struct _WNDCLASS { UINT style; WNDPROC lpfnWndProc; int cbClsExtra; int cbWndExtra; HANDLE hInstance; HICON hIcon; HCURSOR hCursor; HBRUSH hbrBackground; LPCTSTR lpszMenuName; LPCTSTR lpszClassName; } WNDCLASS;
2013-9-9 16
2013-9-9 4
1.3 消息驱动、消息队列、消息响应 Windows是一种消息驱动(事件驱动)的 操作系统。操作系统能够将输入设备的 变化上传给应用程序。如用户在某个程 序活动时按了一下键盘,操作系统马上 能够感知到这一事件,并且能够知道用 户按下的是哪一个键,操作系统并不决 定对这一事件如何作出反应,而是将这 一事件转交给应用程序,由应用程序决 定如何对这一事件作出反应。MSG
2013-9-9
13
• 窗口过程函数
第二个成员变量lpfnWndProc指定了这一类型 窗口的过程函数,也称回调函数。回调函数 的原理是这样的,当应用程序收到给某一窗 口的消息时(还记得前面讲过的消息通常与 窗口相关的吗?),就应该调用某一函数来 处理这条消息。这一调用过程不用应用程序 自己来实施,而由操作系统来完成,但是, 回调函数本身的代码必须由应用程序自己完 成。对于一条消息,操作系统到底调用应用 程序中的哪个函数(回调函数)来处理呢? 操作系统调用的就是接受消息的窗口所属的 类型中的lpfnWndProc成员指定的函数。每一
HINSTANCE hInstance, // handle to current instance HINSTANCE hPrevInstance, // handle to previous instance LPSTR lpCmdLine, // command line int nCmdShow // show state
2013-9-9 7
消息队列:操作系统为每个应用程序建 立的用于盛放消息的先进先出的缓冲区。
应用程序
OS
消息响应:应用程序对消息进行处理的 过程。
2013-9-9
8
1.4 WinMain函数 (Windows程序的入口函数) 1.4.1 WinMain函数定义 int WINAPI WinMain(
2013-9-9 6
从变量的类型区分变量的用途
int x,y; x=30; y=30; //x和y既可以用来表示坐标点,也可以用来表示宽度和 高度,还可以用来表示身高和体重。
typedef int WIDTH typedef int HEIGHT WIDTH x; HEIGHT y; //好处:我们从变量的类型上就可以知道x和y是用来表 示宽度和高度。
种不同类型的窗口都有自己专用的回调函数, 该函数就是通过lpfnWndProc成员指定的。
2013-9-9 14
1.4.3 消息循环 在创建窗口、显示窗口、更新窗口后, 我们需要编写一个消息循环,不断从消 息队列中取出消息,并进行响应。 GetMessage函数取出消息 TranslateMessage函数
windows程序设计 (2)
Windows程序设计简介Windows程序设计是指在Windows操作系统上开发和设计应用程序。
Windows操作系统提供了丰富的应用程序开发工具和API,使开发者能够利用各种编程语言(如C++、C#、等)开发功能强大、丰富多样的应用程序。
在Windows上进行程序设计可以涵盖很多方面,包括图形用户界面(GUI)设计、操作系统交互、网络通信、以及与硬件设备的交互等。
本文将重点介绍Windows程序设计的基本概念和一些常用的开发工具和技术。
开发工具在Windows上进行程序设计,可以使用各种开发工具和集成开发环境(IDE)来简化开发过程。
以下是一些常用的Windows程序设计开发工具:1.Visual Studio:Visual Studio是一套功能强大的集成开发环境,由Microsoft开发和维护。
它支持多种编程语言,包括C++、C#、Visual Basic等,并且提供了丰富的开发工具和调试功能。
2.Dev-C++:Dev-C++是一个免费开源的C++编程环境,它提供了一个简单易用的集成开发环境,并且可以方便地编译和调试C++程序。
3.Code::Blocks:Code::Blocks是一个开源的跨平台集成开发环境,支持多种编程语言,包括C++、C等。
它提供了丰富的插件和功能,可以方便地进行Windows程序设计。
除了以上列举的开发工具,还有其他一些可供选择的开发工具,开发者可以根据自己的需求和喜好来选择合适的工具。
Windows程序设计基础在进行Windows程序设计之前,了解Windows操作系统的基本概念和原理是非常重要的。
以下是一些Windows程序设计中常用的基础知识:1.Windows窗口:Windows窗口是Windows程序的基本界面单元。
每个窗口都有自己的窗口过程(WindowProcedure),用于处理窗口消息和事件。
2.控件和对话框:Windows程序中常用的GUI元素称为控件,如按钮、文本框、列表框等。
语言程序设计基础01
PART 01 Visual Basic概述什么是程序设计语言?我们想用计算机解决一个问题,必须事先设计好计算机处理问题的步骤,然后把这些步骤按照计算机能够识别的指令编写出来。
并送给计算机执行,计算机才能按照我们的意图完成指定的工作。
我们把计算机能够执行的指令序列称为程序。
编写程序的过程称为程序设计。
显然我们人类是通过程序来告诉计算机该如何处理问题,那么如何与计算机进行交流?人类与计算机的交流存在鸿沟,计算机听不懂人类语言。
假如我们直接对着电脑说出汉语、英语、俄语等其他自然语言跟计算机交流,计算机听不懂。
计算机只能理解0和1的二进制的指令码,这个时候就需要一种填补语言(中间的媒介)来跨越人与计算机交流的鸿沟。
你好语言程序桥梁这种语言不仅我们人类能理解,,而且计算机也能明白,这种特殊的语言成为程序设计语言,实现人与计算机之间的交流。
程序设计语言与现代计算机共同诞生,共同发展,至今已有60多年的历史;形成规模庞大的家族,经历了机器语言、汇编语言和高级语言三个阶段。
计算机语言用二进制代码0和1来表示计算机可直接执行的指令,每条指令让计算机执行一个简单动作。
对人类来说机器语言比较晦涩难懂,但计算机却可以直接理解和执行,为了克服这个问题,在指令中使用助记符,这样形成了汇编语言。
汇编语言以约定的助记符来表示机器指令,每条汇编指令基本上与一条机器指令相对应,与机器语言比较,汇编语言比较直观,用汇编语言编写的程序经过简单的翻译,就可以被机器执行。
高级语言的语法规则简单清晰,是由英语单词和数学符号组成,最接近我们人类语言,比较容易掌握和理解。
但高级语言编写的程序,需要经过翻译软件翻译成机器指令后,才能被计算机执行。
现在比较流行的高级语言有:Visual Basic、C语言、Java语言。
Visual Basic是一种面向对象的可视化程序设计,它是在 Basic语言基础上发展起来的、功能强大的Windows应用程序的开发工具。
第1章-Visual C#程序设计基础
1.1
Framework与 .NET Framework与Visual C#
1.2
程序中简单错误的调试
1.1 .NET Framework与Visual C# Framework与 1.1.1 .NET Framework简介 简介
.NET Framework(又称 框架) (又称.NET框架) 框架 是微软所创建的新一代应用开发平台, 是微软所创建的新一代应用开发平台,它 能够让软件不仅适用于传统的PC而且也能 能够让软件不仅适用于传统的 而且也能 够满足目前在网络时代所提出的新任务的 需要。 需要。
3.Visual C# 2005的新特性 . 的新特性
(1).分部类型 . (2).可空类型 . (3).迭代器 . (4).泛型 . (5).匿名方法 .
(6).命名空间别名限定符 . (7).优化的代码段 . (8).强大的重构工具 . (9).良好的编码风格 . (10).友好的跟踪提示 . (11).新颖的类设计器 . (12).调试更加方便 .
(1) 把源代码编译为 把源代码编译为Microsoft中间语 中间语 言(IL)。 。 (2) CLR把IL编译为平台专用的代码。 编译为平台专用的代码。 把 编译为平台专用的代码
MSIL是将 是将.NET代码转化为机器语言 是将 代码转化为机器语言 的一个中间过程。 的一个中间过程。它是一种介于高级语言 和基于Intel的汇编语言的伪汇编语言。 的汇编语言的伪汇编语言。 和基于 的汇编语言的伪汇编语言
Visual C#在带来对应用程序的快速开 在带来对应用程序的快速开 发能力的同时,并没有牺牲C/C++程序员 发能力的同时,并没有牺牲 程序员 所关心的各种特性。 所关心的各种特性。 C#是专门为 是专门为.NET应用而开发出的语言, 应用而开发出的语言, 是专门为 应用而开发出的语言 C# 语法简洁、功能强大、类型安全,在保 语法简洁、功能强大、类型安全, 风格语言的表示形式和优美的同时, 持C风格语言的表示形式和优美的同时, 风格语言的表示形式和优美的同时 实现了应用程序的快速开发。 实现了应用程序的快速开发。
windows程序设计教程课程设计 (2)
Windows程序设计教程课程设计一、课程设计简介本教程旨在通过一系列课程,让学生掌握Windows程序设计的基础知识和开发技能。
通过该课程,学生将学会使用C语言和Windows API 开发Windows应用程序,并且学习一些常用的GUI控件的使用方法。
同时,该课程还包括了一些实战项目,让学生可以通过实践来巩固所学知识。
二、教学目标1.掌握Windows程序设计的基础知识和开发技能;2.熟练掌握C语言和Windows API的使用;3.学习一些常用的GUI控件的使用方法;4.了解Windows操作系统的底层原理;5.能独立完成简单的Windows应用程序开发工作;6.能够通过实践项目来巩固所学知识。
三、教学内容1. Windows程序设计基础(1)Windows程序设计概述了解Windows程序设计的基本概念和特点,掌握Windows应用程序的运行机制和开发流程。
(2)Windows API学习Windows API的基本概念,掌握Windows API的使用方法。
(3)C语言基础熟悉C语言的基本语法和数据类型,掌握C语言的流程控制、数组、函数等基本知识。
(4)Windows程序设计实例通过一个简单的Windows程序设计实例,让学生了解Windows应用程序的工作流程和基本原理。
2. GUI控件的使用(1)Windows控件概述了解Windows界面设计的基本原理,学习Windows界面设计的基本要素和常用的GUI控件。
(2)Windows GUI编程基础学习Windows GUI编程的基本概念和操作方法,掌握如何使用Windows API和C语言进行GUI编程。
(3)Windows GUI控件的使用方法学习如何使用Windows常用的GUI控件,包括按钮、文本框、列表框、组合框、滚动条等。
3. Windows程序设计实战项目(1)记事本应用程序通过实现一个简单的记事本应用程序来加深学生对Windows应用程序设计的掌握。
曾强聪-Visual Basic 6.0程序设计教程(第二版)第1章 Visual Basic 6.0基础知识
( 4) 磁盘空间 : 对于学习版 , 典型安装 48MB, ) 磁盘空间: 对于学习版, , 完全安装 80MB。对于专业版,典型安装 48MB, 。对于专业版, , 完全安装 80MB。对于企业版,典型安装 128MB, 。对于企业版, , 完全安装 147MB。 。 (5)其他设备:CD-ROM 驱动器、鼠标或其他光 驱动器、 )其他设备: 标控制设备。 标控制设备。
返回本节
1.2.2 安装步骤
(1)启动安装程序。 )启动安装程序。 (2)输入 号。 )输入CD号 (3)输入姓名及用户单位。 )输入姓名及用户单位。 (4)安装路径的选择。 )安装路径的选择。 (5)安装方式的选择。 )安装方式的选择。
返回本节
1.2.3 添加或删除 Visual Basic 6.0 部件
Caption Caption Caption BorderStyle Caption Caption Caption
单价: 数量: 累计应收款: 1 继续 刷新 退出
图1-15 通过代码窗口编辑代码
图1-16 立即窗口
图1-17 监视窗口
返回本节
返回首页
图1-13 “保存文件”对话框
图1-14 界面设计
表1-2 控件属性值设置
对象 Form1 Text1 Text2 Label1 Label2 Label3 Label4 Command1 Command2 Command3 类型 窗体 文本框 文本框 标签 标签 标签 标签 按钮 按钮 按钮 属性 Caption 设置值 商品零售计价
图 1 4 单 “编 辑 ” 菜 返回本节
1.5.3 “视图”菜单 视图”
“视图”菜单用于显示各种窗口。 视图”菜单用于显示各种窗口。 图 1 5 视 图 菜 单 栏 返回本节
第1章 程序设计概述
8
1.1.1 程序设计语言
2. 汇编语言 面向机器的程序设计语言,用助记符号描述的指令系统。
汇编语言不能直接执行,必须将其翻译成机器语言 汇编语言 编译 机器语言
特点:低级语言,保持了机器语言的 优点,可有效访问和控制硬件 设备,编译生成的目标代码短, 占用内存少,执行速度快。
9
1.1.1 程序设计语言
② “直到型”循环:先执行循环体A,再判断 循环条件P是否成立,当条件p不成立时, 反复执行A操作,直到p条件成立为止。 注意:循环体至少执行一次。
成立
A
P
不成立 成立
A P
不成立
22
1.2.3 N-S图表示法
N-S图:完全去掉了带箭头的流程线, 每种结构用一个矩形框表示。
1、顺序结构
A模块
A模块 B模块
(1) 计算机处理的任务都是计算任务 (2) 处理对象是数据(数字、文字、图形、图像、声音等) (3) 处理规则是指处理的动作和步骤
2. 程序设计是设计、编制和调试程序的方法与过程。
(1) 程序设计是软件构造活动中重要组成部分 (2) 程序设计是以某种程序设计语言为工具 (3) 程序设计是一项创造性工作,是一门学科
2. 数据元素及其关系在计算机存储器内的表示,称为数据
的存储结构(Storage Structure) 3. 数据的运算,即对数据施加的操作。
13
1.1.4 算法概述
1、算法的概念
广义上讲,算法就是为解决一个问题而采取的方法和步骤
著名的沃思公式: 数据结构+算法=程序
对数据的描述
对操作的描述
程序=数据结构+算法+程序设计方法+语言工具和环境
第一章计算机基础知识计算机通用能力课程
计算机工作原理
3.计算机由五大部件组成
原始数据 命令/程序
I/O设备
结果
读
取数
内存储器
写
存数
指令
存取命令
运算器
数据线: 控制线:
控制器
输入/输出命令
运算命令
1.5 微型计算机及硬件系统
微型机的硬件结构亦遵循冯·诺依曼型计算 机的基本思想。由中央处理器(CPU)、 存储器和输入/输出接口等集成电路组成, 各部分之间通过总线连接而实现信息交换。
1.2 计算机的特点,应用及分类
计算机的特点:
高速运算能力 计算精度高和可靠的判断能力 具有记忆和逻辑判断能力 具有自动控制能力 通用性,适合各界人士使)
如:天文、地质、气象、航天等涉及的大量计算
信息管理(数据处理)
对信息进行收集、存储、加工、展示、分析和传送 等操作
外部设备
CPU
运算器 控制器
硬件系统
内存(ROM / RAM /Cache)
总线
I/O接口
外存储器
输入设备 输出设备
1.4计算机工作原理
1.计算机采用二进制形式来表示数据和指令 数据:以器件的两种物理状态,如晶体管的“通” 和“断”等来表示,这种器件只能表示二进制代 码。因此,计算机处理的所有数据都要转换成二 进制代码。 指令:计算机中另一种重要信息, 计算机的所有动作都按一条条指令的规定来进行。 指令也用二进制代码表示 操作码 操作数 操作码:指出操作的性质
什么是计算机
计算机是一种能按照事 先存储的程序,自动、 高速进行大量数值计算 和各种信息处理的现代 化智能电子装置。
1.1 计算机的过去,现在和未来
信息技术教学:程序设计初步
信息技术教学: 程序设计初步第三部分QBASIc程序设计基础第一章软件设计基础知识【教学目旳】【教学重点、难点】【教学过程】第一节计算机语言语言是人类进行思想交流旳工具, 人与计算机之间进行交流同样也需要“语言”——一种能被计算机识别旳专用语言称为计算机语言。
能被计算机直接接受旳并立即执行旳语言称为计算机语言。
只能被计算机间接接受旳经翻译后形成目旳代码再执行旳语言, 一般称为程序设计语言, 包括汇编语言和高级语言。
一.汇编语言由于机器语言不利于计算机旳推广应用, 人们运用某些简短旳英文单词或缩写来表达指令, 以便于理解和记忆。
这种用数字、符号来替代二进制代码旳计算机语言称为汇编语言。
例如, 要把一种数装入cPU旳寄存器里, 就用moV表达, 要做加法就用ADD表达, 指令次序跳转用jmP表达等。
二.高级语言高级语句靠近自然语句, 一般是用某些简朴旳英语单词或缩写和数学式子来体现意思, 它具有易读、易写、易修改, 能被以便地移植在不一样型号旳计算机上等长处。
目前国内外通用旳高级语言诸多, 比较常见旳有BASIc, FoRTRAN, PAScAL, c, coBLE 等。
它们旳特点和应用领域各有侧重:FoRTRAN语言重要用于科学计算;PAScAL语言重要用于商业和数据处理;c语言是近年来迅速推广使用旳一种现代语言, 既具有高级语言旳特点又具有低级语言旳许多特点, 尤其适合编写系统软件;BASIc语言易学, 适合于初学者。
三.源程序与目旳代码用高级语言编写旳源程序不能直接被计算机接受, 必须通过“翻译”将其翻译成目旳代码后才能被计算机执行。
“翻译”高级语言旳源程序旳方式一般有两种:解释型旳编译型。
所谓“编译”是将源程序翻译成目旳文献, 而“解释”是将源程序逐行处理, 即解释一行处理一行, 再解释下一行……直到结束。
BASIc语言属于解释型旳, QUIckBASIc语言是属于编译型旳。
【教学目旳】【教学重点、难点】【教学过程】第二节软件设计旳环节计算机是一种有效旳信息处理机, 人们怎样运用它去处理信息来处理实际问题呢?一.分析问题:首先要对问题进行分析, 看看这个问题提什么规定, 给出了哪些已知条件;要使问题得到处理, 需要哪些条件;从给出旳已知条件出发, 通过哪些处理才能最终处理问题而得到成果。
最全的windows知识点总结
第一章Windows程序设计基础Windows的特点:(1)直观,高效的面向对象的图形用户界面,易学易用。
(2)用户界面统一,友好,美观。
(3)丰富的设备无关的图形操作。
(4)多任务的实现。
操作系统的主要功能有进程管理,内存管理,设备管理,文件系统,用户管理等。
操作系统的分类:(1)单用户单任务操作系统(2)单用户多任务操作系统(3)多用户多任务分时操作系统(4)网络操作系统API(Application Programming Interface 应用程序编程接口)是用来控制Windows各个元素的外观和行为的一套预先定义的Windows函数。
MFC(Microsoft Foundation Classes 微软基础类库)是由微软公司提供的用于在Visual C++环境下编写Windows应用程序的一个框架和引擎,是Windows下应用程序的编程语言接口。
虚拟机:由Windows在内存中创建的逻辑微机,由它来运行应用程序。
内存,准确的说是无力内存。
运行任何一个程序都是要占用物理内存,当关闭这个程序时,系统也会从物理内存中删除这个程序的信息,也称释放内存。
习题:5.Windows的多任务是如何实现?答:当Windows接收到由鼠标,键盘,定时器信号或某些I/O操作产生的“事件”后,为该任务分配CPU时间。
每个任务使用由Windows分配的短暂的时间片轮流使用CPU,由于CPU对每个时间片的处理速度非常快,在用户看来好像这些任务在同时执行。
6.API和MFC的作用是什么?答:上有不做总结。
第二章Windows编程概述Windows基础用户界面对象包括:窗口,标题栏,图标,光标,插入符号,对话框,控件等。
*indows定义的别名:Typedef unsigned long DWORD;无符号长整形Typedef int BOOL;整形Typedef unsigned char BYTE;无符号字符型Typedef float FLOAT;单精度浮点型Typedef unsigned int UINT;无符号整形句柄与存放地址所占用字节一样,4字节,32位。
第1章、Windows游戏开发环境
二、OpenGL(Open Graphics Library )
专业的图形程序接口,是功能强大,调用方便 的底层图形库
可跨平台使用,如应用于Windows, Linux/Unix 和Mac OS X
OpenGL 在游戏世界非常流行,它与 Microsoft Windows 平台上的 DirectX 具有竞争关系。
“Commando”是一个Free Gamers, Inc 公司开发的军事模拟游戏。 “Commando” 游戏的设计者希望游戏看上去和感觉上尽可能 和真实生活一样。 另外, 设计者感到游戏需 要高计算能力的设备来支持这样的游戏剧本。 “Nations Pride” 最理想是在何种平台上进 行设计?
GDI 的特性如下所示:
设备上下文(Device Context) 映射模式(逻辑坐标、设备坐标) 设备无关性
应用
GDI 设备 上下文
设备 驱动
输出 设备
2、GDI+
GDI+是GDI 的扩展。 它由各种 .NET 类组成。 GDI+的一个优点是当你在显示器和打印机上排列输 出数据时, 你不需要知道任何驱动细节。
市场上有一些常见的游戏机, 例如Microsoft Xbo x、Sony Play Station 2和Nintendo GameCu be 。
在市场上常见的各种手持设备有 Nintendo 的 Gam eboy 和 Gameboy Advanced、Nokia 的 N-Ga ge、Sony 的 Playstation Portable 以及 Tapw ave 的 Zodiac。
哪一个DirectX API用来处理来自鼠标、键盘 或其它游戏控制器的数据?
答案: DirectInput
