翻新时间:2023-03-02
在Delphi中巧用Windows 的API函数
在Delphi中巧用Windows 的API函数 在Delphi中巧用Windows 的API函数 信息技术论文 更新:2006-4-8 阅读: 在Delphi中巧用Windows 的API函数
在Delphi中巧用Windows 的API函数
潘汉杰
河南金融管理学院计算机教研室
应用之一:Delphi中有控件MEMO,当使用应控件输入内容或编辑时,如何确定光标当前的位置呢?这时就可以调用Windows API函数中的EM_LINEFROMCHAR和EM_LINEINDEX消息来确定MEMO控件中光标的当前行和列,具体调用方法的过程如下:
procedure TForm1.Button1Click(Sender: TObject);
var
LineNum:longint;
CharsBeforeLine:longint;
begin
LineNum := SendMessage(Memo1.Handle,EM_LINEFROMCHAR,
Memo1.SelStart,0);
CharsBeforeLine:=SendMessage(Memo1.Handle,EM_LINEINDEX,
LineNum,0);
Label1.Caption:='Line: '+IntToStr(LineNum +
1);
Label2.Caption:='Position: '+IntToStr((Memo1.SelStart -
CharsBeforeLine)+
1);
end;
应用之二:Delphi中的控件TlistBox没有提供水平滚动条,如果想添加一个水平流动条,我们只需使用API函数给TListBox 发送一个LB_SetHorizontalExtent消息就行了。
源代码如下:
longint(0));
应用之三:当我们需要获取所运行程序的计算机的分辨率时,有二种方法:①可以通过访问Delphi提供的SCREEN全局变量,即SCREEN.WIDTH和SCREEN.HEIGHT以像素点给出屏幕的分辨率。②利用WINDOWS的API函数GetDeviceCaps()来得到所用显示器的分辨率,源代码如下:
Application.Initialize;
Application.CreateForm(TForm1, Form
1);
CASE GetDeviceCaps(GetDC(Form1.Handle), HORZRES) of
640 : //对640*480分辨率进行处理的代码;
800 : //对800*600分辨率进行处理的代码;
END;
Application.Run;
通讯地址:郑州市郑花公路29号院河南金融管理学院
计算机教研室 潘汉杰
邮政编码:450008
电 话:0371-5734664
下载文档
网友最新关注
- 雪
- 云
- 雪
- 杨树叶
- 春天的花园
- 春雨
- 春天来了
- 春天的声音
- 春游川北民俗文化园
- 家乡的小河
- 夕阳下的贺江
- 我爱春天
- 云
- 春姑娘的宴会
- 我看到你了 春
- 浅谈疏林地补植补造作业过程管理
- 工程结算舞弊现象的审计策略
- 中央企业经济责任审计策略
- 以风险管理为视角研究水利建设项目审计策略
- 领导干部经济责任审计的难点分析及解决方法
- 创新企业管理理论下的绩效审计
- 企业管理执行力的重要性
- 对于木质品物流管理问题分析
- 物流管理人才培育途径
- 浅析“免疫系统”理论视野下的国家审计
- 物流管理创新人才栽培思索
- 对构建国家审计理论体系的思考
- 浅谈董事长经济责任审计的审计范围及责任界定
- 职校企业管理教育革新思路
- 浅谈施工企业管理能力再提高
- 兰兰过桥(A、B案)3
- 棉花姑娘教学案例(三)
- 《两只小狮子(A、B案)》2
- 火车的故事(A、B案)
- 兰兰过桥教学案例(二)
- 手捧空花盆的孩子(A、B案)3
- 火车的故事(A、B案)2
- 地球爷爷的手(A、B案)1
- 兰兰过桥(A、B案)
- 《两只小狮子(A、B案)》3
- 兰兰过桥(A、B案)2
- 手捧空花盆的孩子(A、B案)1
- 火车的故事教学案例(二)
- 地球爷爷的手(A、B案)2
- 地球爷爷的手教学案例(二)