系列文章目录
文章目录
- 系列文章目录
- 解释下列名词的含义?
- 设备环境(描述表)保存了哪些信息?有什么作用?
- 模态对话框与非模态对话框有什么区别?
- 在程序设计中,经常要用到线程,对线程的操作有哪些?
- Windows编程中常用消息有哪些?应用程序如何响应键盘消息?
解释下列名词的含义?
答:
- 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操作系统的用户模块将获得的按键信息封装在一个键盘消息中,并把该键盘消息发送到应用程序的消息列队中。应用程序接收到消息后,将对消息进行转换并处理。