【Windows编程】期末复习题2

系列文章目录

期末复习题1


文章目录


解释下列名词的含义?

答:

  • API:应用程序编程接口(Application Programming Interface)
  • GDI:图形设备接口(Graphics Device Interface)
  • SDK:软件开发包(Software Development Kit)
  • DLL:动态链接库(Dynamic Link Library)

设备环境(描述表)保存了哪些信息?有什么作用?

答:设备环境也称设备描述表或设备上下文,它是由Windows管理的一个数据结构,它保存了绘图操作中一些共同需要设置的信息,如当前的画笔、画刷、字体和位图等图形对象及其属性,以及颜色和背景等影响图形输出的绘图模式。

应用程序利用设备环境中的信息定义图形对象及其属性,并实现应用程序、设备驱动程序和输出设备之间绘图命令的转换。

模态对话框与非模态对话框有什么区别?

答:对话框是一个弹出式窗口,它一般用于程序需要用户输入或者需要和用户进行交互活动的场合。对话框的主要形式有模态对话框和非模态对话框两种。

  • 模态对话框不允许用户在关闭对话框之前切换到应用程序的其它窗口,当一个模态对话框初始化时,对话框的消息循环将处理消息,但并不返回给WinMain函数。
  • 非模态对话框允许用户在该对话框与应用程序其它窗口之间进行切换,非模态对话框从
    WinMain函数的消息循环中接收输入。

在程序设计中,经常要用到线程,对线程的操作有哪些?

答:对线程的操作有:启动线程(采用Start()方法);终止线程(Abort()方法,调用Abort方法后,如果系统自动清理代码的工作没有结束,可能会出现死机一样的假象);合并线程(Join()方法用于把两个并行执行的线程合并为一个单个的线程);让线程休眠(Sleep()方法可让线程休眠);挂起与继续(Suspend()可挂起线程,Resume()方法可让挂起线程继续)。

Windows编程中常用消息有哪些?应用程序如何响应键盘消息?

答:Windows中常用的消息有:窗口管理消息、初始化消息、输入消息、系统消息、剪切板消息、控件处理消息、控件通知消息、滚动条通知消息、非用户区消息、MDI(多文档界面)消息、DDE(动态数据交换)消息、以及应用程序自定义的消息等。常用消息比如:WM_CREATE(窗口被创建)、WM_DESTROY(窗口被销毁)、WM_SIZE(窗口大小变化)、WM_CLOSE(关闭窗口)等。

响应键盘消息:当用户按下某个键时,键盘会检测到这个动作,并通过键盘控制器把扫描码(scan code)传送给Windows的键盘驱动程序。键盘驱动程序把这个扫描码转换为键盘虚拟码,(虚拟码与具体硬件无关,不同厂商的键盘,同一个键的虚拟码都是相同的。)然后,键盘驱动程序把该键盘操作的扫描码和虚拟码以及其它信息传递给操作系统。Windows操作系统的用户模块将获得的按键信息封装在一个键盘消息中,并把该键盘消息发送到应用程序的消息列队中。应用程序接收到消息后,将对消息进行转换并处理。

相关推荐
Hello.Reader1 小时前
Flink State V2 实战从同步到异步的跃迁
网络·windows·flink
皓月盈江4 小时前
Windows系统如何批量添加防火墙策略禁止端口入和出?
windows·netsh·批量添加防火墙策略·禁止端口入和出
EnCi Zheng14 小时前
SpringBoot + PostgreSQL 密码认证失败 Windows 系统解决方案
windows·spring boot·postgresql
Damon小智16 小时前
玩转CodeX:CodeX安装教程(Windows+Linux+MacOS)
linux·windows·macos·ai·ai编程·codex·gpt-5
用户311879455921816 小时前
DOpusInstall-13.2.exe 安装方法,简单几步完成
windows
张某人的胡思乱想20 小时前
Create/Assemble/Link x64 Windows
windows
ThisIsMirror20 小时前
CompletableFuture并行任务超时处理模板
java·windows·python
say_fall21 小时前
精通C语言(2.结构体)(内含彩虹)
c语言·开发语言·windows
长源Gingko1 天前
Windows中在QTCreator中调试,提示缺少debug information files问题的解决
windows·qt
white-persist1 天前
MCP协议深度解析:AI时代的通用连接器
网络·人工智能·windows·爬虫·python·自动化