FlashWindow(Form1.Handle, TRUE);
FlashWindow(Application.handle, TRUE);
end;
④语法:SetWindowText(hWnd: HWND;lpString: PChar): BOOL;
单元:windows.pas
作用:设置窗口的标题文字或控件的内容
返回值:设置成功返回TRUE,否则返回FALSE
示例:
procedure TForm1.Button1Click(Sender: TObject);
var
TheText: PChar;
TextLen: Integer;
begin
TextLen:=GetWindowTextLength(Form1.Handle);
GetMem(TheText,TextLen);
GetWindowText(Form1.Handle,TheText,TextLen+1);
Edit1.Text:=string(TheText);
FreeMem(TheText);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
SetWindowText(Form1.Handle, PChar(Edit1.Text));
end;
⑤语法:IsWindow(hWnd: HWND): BOOL;
单元:windows.pas
作用:判断一个窗口句柄是否有效
返回值:有效返回TRUE,否则返回FALSE
示例:
procedure TForm1.Button1Click(Sender: TObject);
begin
if (IsWindow(Button1.Handle)) then
Button1.Caption:=?TRUE'
else
Button1.Caption:=?FALSE';
end;
怎么样,还过瘾吧?今天是第一次,就介绍些较容易接受的函数,否则朋友们肯定会喊吃不消。不知道朋友们对这样的编排形式能够接受吗?还有,我会按照API函数的分类(控件与消息函数/硬件与系统函数/菜单函数/文本和字体函数/打印函数等等)分别介绍,但我不会介绍全部的API函数,否则大有骗稿费之嫌疑,而且本人的水平也难做到每个语句都有示例,只介绍平常用得上的,本人经常使用的函数,有时也会介绍一下比较隐秘但却非常有用的API函数。
附TIPS(DELPHI技巧)一个:
如果有这样一个目录:
c:\\windows\\media\\temp\\abc\\sound\\chime.wav
我希望它能缩短成:
c:\\windows\\..\\sound\\chime.wav
如何写程序呢?
回答:
用下面的过程试试:
function shortenfilename(s : string) : string;
var drive,curdrive : string[2];
dir,curdir : string[80];
name : string[20];
ext : string[5];
i : byte;
begin
for i:=1 to length(s) do s[i]:=upcase(s[i]);
s:=fexpand(s);
fsplit(s,dir,name,ext);
drive:=copy(dir,1,2);
dir:=copy(dir,4,length(dir)-3);
getdir(0,curdir);
curdrive:=copy(curdir,1,2);
curdir:=copy(curdir,4,length(curdir)-3)+?\\';
if drive=curdrive then begin
if copy(dir,1,length(curdir))=curdir then begin
i:=length(curdir);
if length(dir)<>i then dir:=dir+?\\';
shortenfilename:=copy(dir,i+1,length(dir)-i-1)+name+ext;
end else shortenfilename:=copy(s,3,length(s)-2);
end else shortenfilename:=s;
end;
注:本文只为提高DELPHI能力的朋友所写,非一般入门级的教程,所以文中所有DELPHI的自身函数和一些基本技巧不再说明,请朋友查阅DELPHI的联机帮助手册。
libosong 发表于 2007-10-12 21:16 Api函数名 函数说明 WIN16可用 WIN95可用 WINNT可用
---------------------------------------------------------------------------------------------------------------
AbortDoc 终止一项打印作业 是 是 是
AbortPath 终止或取消DC中的一切路径 否 是 是 AbortPrinter 删除打印机缓冲文件 否 是 是 AbortSystemShutdowna 停止系统工作 否 是 是 AccessCheck 检验客户访问权限 否 是 是
AccessCheckAndAuditAlarm 检验访问,产生声音或警报 否 是 是 ActivateKeyboardLayout 激活一个新的键盘设备 否 是 是
AddAccessAllowedAce 将ACCESS_ALLOWED_ACE加入ACL 否 是 是 AddAccessDeniedAce 将ACCESS_DENIED_ACE加入ACL 否 是 是 AddAce 将ACE加入一个已存在的ACL 否 是 是 AddAtom 将一个字符串加入本地原子表 是 是 是
AddAuditAccessAce 将SYSTEM_AUDIT_ACE加入ACL 否 是 是 AddFontResource 将一种字体加入字体表 是 是 是 AddForm 加入一个打印机窗体 否 是 是 AddJob 启动一个打印作业 否 是 是
AddMonitor 加入一个打印机管理器 否 是 是 AddPort 加入一个打印机端口 否 是 是
AddPrintProcessor 将打印处理器复制到打印机服务器中 否 是 是 AddPrintProvidor 加入一个打印机支持器 否 是 是 AddPrinter 在打印机服务器上建立一个打印机 否 是 是
AddPrinterConnection 为当前用户建立与打印机的联系 否 是 是 AddPrinterDriver 将打印机驱动程序复制到打印机服务器中 否 是 是 AdjustTokenGroups 使能/取消令牌中的群 否 是 是 AdjustTokenPrivileges 使能/取消令牌特权 否 是 是 AdjustWindowRect 计算所需窗口矩形的大小 是 是 是 AdjustWindowRectEx 计算所需窗口矩形的大小 是 是 是 AdvancedDocumentProperties 进行打印机高级设置 否 是 是 AllocConsole 为当前进程建立控制台 否 是 是 AllocateAndInitializeSid 分配和初始化SID 否 是 是
AllocateLocallyUniqueId 分配LUID 否 是 是 AngleArc 按指定角度画弧 否 是 是
AnimatePalette 替换逻辑调色板中的项目 是 是 是 AnyPopup 标识弹出式窗口是否存在 是 是 是 AppendMenu 在菜单中加入新的项目 是 是 是 Arc 画弧 是 是 是 ArcTo 画椭圆弧 否 是 是
AreAllAccessesGranted 检查所有要求的访问 否 是 是 AreAnyAccessesGranted 检查任何要求的访问 否 是 是 ArrangeIconicWindows 排列最小化的子窗口 是 是 是 AttachThreadInput 将线索彼此相连 否 是 是 auxGetDevCaps 获取附属设备容量 否 是 是 auxGetNumDevs 返回附属设备数量 否 是 是 auxGetVolume 获取当前卷设置 否 是 是 auxOutMessage 向输出设备发送消息 否 是 是 auxSetVolume 设置附属设备卷 否 是 是
BackupEventLog 将事件记录保存至后备文件 否 是 是 BackupRead 产生磁带备份读 否 是 是 BackupSeek 产生磁带备份查寻 否 是 是 BackupWrite 产生磁带备份写 否 是 是 Beep 产生一个声调 否 是 是
BeginDeferWindowPos 创建一个窗口位置结构 否 是 是 BeginPaint 准备一个画图窗 是 是 是 BeginPath 开始一个路径等级 是 是 是
BeginUpdateResource 在可执行文件中开始资源文件更新 否 是 是 BitBlt 在设备描述表间复制位图 是 是 是 BringWindowToTop 恢复重叠窗 是 是 是 BroadcastSystemMessage 否 是 是
BuildCommDCB 向DCB中传送设备定义字符串 是 是 是
BuildCommDCBAndTimeouts 建立COMMDCB并设置超时值 否 是 是 CallMsgFilter 将消息传给消息过滤过程 是 是 是 CallNamedPipe 多管道操作 否 是 是
CallNextHookEx 调中链中的下一个挂钩过程 是 是 是 CallWindowProc 将消息传答窗口函数 否 是 是
CancelDC 取消指定DC上的任何悬而未决的操作 否 是 是 CascadeWindows 否 是 是
ChangeClipboardChain 从剪贴板查看窗口上删除一个窗口 是 是 是 ChangeMenu 否 是 是
ChangeServiceConfig 修改服务参数 否 是 是 CharLower 将字符或字符串变为小写 否 是 是 CharLowerBuff 将字符串变为小写 否 是 是 CharNext 转到字符串的下一个字符 否 是 是 CharPrev 转到字符串的上一个字符 否 是 是 CharToOem 把字符串转换成OEM字符 否 是 是