读书人

大家早上好请假个有关问题有关问题

发布时间: 2012-04-26 14:01:31 作者: rapoo

大家早上好,请假个问题,在线等!问题比较难,请高手进~~
如何给其他程序的工具栏上的按钮发送点击消息。。。

用代码示之~~~谢谢!

[解决办法]
什么意思,你的意思是击工具栏中的按扭, 执行代码功能两次
var
i:integer;
begin
i:=1;
if i<=2 then
begin
ShowMessage('信息提示');
i:=i+1;
end;
end;
[解决办法]
转自DelphiBBS:

第一步:找到Button所在窗口句柄:
var HWin: THandle;
HWin := FindWindow(nil, '程序Caption');
第二步:找到Button句柄:
EnumChildWindows(HBtn, @EnumerateChildWindows, 0);
第三步:发送消息:
SendMessage(HBtn, WM, 0, 0);

程序参考:

Delphi(Pascal) code
//回调函数,列出所有子窗口句柄var  HBtn: THandle;function EnumerateChildWindows(hWnd: HWND; lParam: LPARAM): BOOL;var  WindowCaption: Array[0..254] of Char;begin  GetWindowText(Hwnd, WindowCaption, 255);  if WindowCaption = '按钮Caption' then     HBtn:= Hwnd;  Result := true;end;procedure TFindForm.Button2Click(Sender: TObject);var  H: HWnd;  I: Integer;begin  H := FindWindow(nil, '程序Caption');  if H = 0 then    Exit;  EnumChildWindows(H, @EnumerateChildWindows, 0);  SendMessage(HBtn, BM_CLICK, 0, 0);end;
[解决办法]

我们两老热情了呀
[解决办法]
3#正...
[解决办法]
探讨
怎么 给 工具栏上的按钮 发送点击消息呢?

读书人网 >.NET

热点推荐