热情软件屋

 

如何激活一个窗口


编号:QA002818
建立日期: 2000年4月5日 最后修改日期:2000年4月5日
所属类别:

caicheng:
    操作系统: Windows98
    编程工具: delphi 4
    问题: 我编写了一个驻在tray area的程序,它是topmouse的,当然这个程序在屏幕上只有图标,这个程序的作用是将相关的指令转成按键,再传给另一个应用程序B。在这个tray 程序中,我使用findwindow找到了另一个桌面上运行的程序B,但只有focus在B上时,它才可以收到按键,当我在屏幕其他地方点击一下以后,程序B便不能收到按键消息。我在tray程序中想使用setfocus(handle)(可在帮助中找到这个函数,但delphi不认,它只认setfocus。我使用的是keybd_event来传递按键消息,所以必须在此之前将程序B设为focus,以使它能接收键盘消息。请问我该用什么方法?我在这个网站上找过答案,有一个sndkey32的等等,均达不到我的要求.非常着急地等您的解答.谢谢。

回答:

    你应该使用SetForegroundWindow,而不是SetFocus。
    
    相关问题:
    QA001102 "实现热键激活后台进程 "

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio