翻新时间: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
下载文档
网友最新关注
- 表哥,你听我说
- 举手投足之间
- 国殇之后,唯有坚强
- 彼岸,灯火阑珊
- 彼岸花动出发
- 触摸都市
- 人之常情
- 感受乡村
- 鸟的评说
- 我爱这个七月
- 渴望丰富多彩
- 蝶变
- 感受乡村
- 地震兄妹
- 换位人生
- 区域特色产业集群的培育与发展(1)
- 知识经济与情报研究
- 男幼儿教师在困境中的自我专业发展
- “富士康事件”对我国当前民营企业管理的启示
- 生命忧化成长理念下的学前教育专业人才培养
- 第四章资讯经济:新经济的产业支柱
- 住房抵押贷款证券化的实质和构建模式(1)
- 论现代幼儿教师应具备的科学素养
- 试论项目教学法——以中职学校为例
- 拱拟教:职前幼儿教师专业发展的重要逾径
- 男性从事幼儿教师工作的影响因素探析
- 浅谈信息网络资源对幼儿发展及现行课程的影响
- 摆脱幼儿教师的言说困境
- 我国房地产投资风险识别及控制(1)
- 影响幼儿教师心理健康的角色压力因素及对策
- 《乌鸦喝水》第二课时教学设计
- 《司马光》教案二
- 《司马光》片段
- 《吃水不忘挖井人》教学设计3
- 《司马光》教案一
- 《司马光》教案三
- 《吃水不忘挖井人》教学设计1
- 《司马光》教学偶得
- 《司马光》课堂教学教案
- 《吃水不忘挖井人》教学设计2
- 《司马光》教学设计
- 《司马光》教案
- 《乌鸦喝水》教案二
- 《司马光》教学设计
- 《乌鸦喝水》第一课时教案