当前位置: 首页 > 图文教程 > 开发语言 > Delphi > Delphi中API编程--在Delphi中调用API函数

Delphi
回调函数与Delphi的事件模型
Delphi中如何实现透明按钮
用Delphi编写打印程序的窍门
自己制作网页特效软件
Delphi+Cell全攻略
开发基于DCOM的局域网聊天室(一)
用简单的Tracer类来为应用写入跟踪
快捷方式/删除项/EXE自删除DIY
排序Select中Option项的一个示例
QQ聊天记录器演示程序(二)
QQ聊天记录器演示程序(一)
Delphi单元文件详解
Delphi学习:在Listbox加背景图
Delphi7目录结构----初学者参考
Delphi学习:在流中查找任意字串
制作一个IPhunter
播放自定义的声音
利用Dephi5编写控制面板程序
用Delphi编写Win2000服务程序
Spcomm串口控件的例程

Delphi中API编程--在Delphi中调用API函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 116 ::
收藏到网摘: n/a

 

  Delphi作为一种面向对象的可视化开发工具,以其开发程序的高速度和编译代码的高效率越来越受到广大编程人员的喜爱。尽管Delphi已经提供了非常强大的开发组件(VCL),但灵活使用API函数一定可以使你的程序增色不少。

  状态键的检查

  当今不少流行软件的编辑窗口(包括Delphi的代码编辑窗口)的底部都有一个状态条用来显示一些状态信息,比如当前光标的位置等。通常键盘的状态键包括[NumLock],[ScrollLock],[CapsLock]和[Insert]这四个键,在编辑窗口中显示状态键的状态可以使你的界面更友好,更有利于方便用户。

  使用delphi强大的开发功能和API提供的GetKeyboardState()函数,你可以轻松地在你的程序中实现状态键检测这一功能。

  也许有些读者要问:我可以使用delphi提供的OnKeyPress函数捕捉按键动作来完成这一功能,又有什么必要调用API函数呢?这就涉及到状态键的另一个特点:即它的状态与程序运行无关。比如说你在word中按下insert键后再切换到delphi中输入代码,这个键的状态仍然保持不变。而如果只使用OnKeyPress函数,那么当你的程序在后台运行时就无法捕捉到在前台程序中发生的按键动作,所以当切换到你程序时也就无法正确反映状态键的状态。因此需要使用API的GetKeyboardState()函数来检查键盘状态。当调用GetKeyboardState()函数时,你需要在程序中开辟一个256字节的缓冲区用来存储键盘上各个键的状态(最简单的方法你可以声明一个TKey