| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4132 人关注过本帖
标题:系统环境下如何判断VFP表单窗口处于激活状态?
取消只看楼主 加入收藏
w7802672
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2015-5-20
结帖率:60%
收藏
已结贴  问题点数:20 回复次数:11 
系统环境下如何判断VFP表单窗口处于激活状态?
我有一个程序,是在播放PPT的同时显示VFP表单的内容,需要在PPT和VFP表单之间来回切换,但由于PPT和VFP表单均未显示窗口标题栏,所以有时候不知道哪个窗口处于激活状态,各位可有什么好办法检测VFP窗口当前是否处于激活状态呢?(在VFP环境下两个VFP表单哪个是激活的知道,但在系统环境下利用ALT+TAB切换窗口时表单中的响应事件ACTIVATE没有反应)
搜索更多相关主题的帖子: 环境 VFP 表单 窗口 激活 
2017-08-18 08:45
w7802672
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2015-5-20
收藏
得分:0 
回复 2楼 mywisdom88
可惜的是我不知道怎么联系他,您记得当时的题目内容吗?我搜一下。
2017-08-18 09:15
w7802672
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2015-5-20
收藏
得分:0 
回复 5楼 吹水佬
非常感谢!
2017-08-18 09:45
w7802672
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2015-5-20
收藏
得分:0 
回复 5楼 吹水佬
不好意思,我是菜鸟,我再请教一下,在我的表单中如何利用您教给我的功能呢?
是否将:
DECLARE LONG SendMessage IN User32 LONG, LONG, LONG, LONG
_SCREEN.Visible = .F.

BINDEVENT(this.hWnd, 7, this, "_SetFocus")
BINDEVENT(this.hWnd, 8, this, "_KillFocus")

以上代码放入表单的INIT事件中,
然后剩下的部分:
    FUNCTION _SetFocus(hWnd, nMsg, wParam, lParam)
        this.Caption = this.name + "窗口获得焦点"
        SendMessage(hWnd, nMsg, wParam, lParam)
    ENDFUNC

    FUNCTION _KillFocus(hWnd, nMsg, wParam, lParam)
        this.Caption = this.name + "窗口失去焦点"
        SendMessage(hWnd, nMsg, wParam, lParam)
    ENDFUNC
如何在表单中调用呢?
也就是说我运行我的表单,然后用您的办法来实现,但我不知道如何在表单中实现,还请赐教,非常感谢!
2017-08-18 10:17
w7802672
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2015-5-20
收藏
得分:0 
回复 8楼 吹水佬
谢谢,我试试,弄不明白的地方再请教您!
2017-08-18 10:29
w7802672
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2015-5-20
收藏
得分:0 
回复 8楼 吹水佬
测试成功了!非常非常的感谢!
2017-08-18 10:43
w7802672
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2015-5-20
收藏
得分:0 
回复 8楼 吹水佬
不好意思,我想再问一下,可否利用TIMER控件使当前活动窗口由PPT再回到VFP呢?
我在VFP表单的TIMER控件中加入了
DECLARE Long SetActiveWindow IN WIN32API Long hWnd
SetActiveWindow( thisform.HWnd )
计时时间到了以后虽然执行了上述命令,窗口标题也显示为“窗口获得焦点”了,但实际上这个VFP窗口并没有被激活,键盘上的操作仍然是对PPT进行操作的。什么样的命令可以使VFP再次变成真正的活动窗口呢?
2017-08-18 12:07
w7802672
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2015-5-20
收藏
得分:0 
回复 12楼 sdta
放在表单的ACTIVATE中也不行,窗口的标题是变了,变成了“窗口获取焦点”了,只是没有真正地被激活,PPT仍然是当前的活动窗口。好象只有用鼠标点窗口才能真正地被激活。
2017-08-18 12:21
w7802672
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2015-5-20
收藏
得分:0 
回复 14楼 吹水佬
谢谢您!非常感谢,如果有什么好的方法还望及时赐教!
2017-08-18 12:40
w7802672
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2015-5-20
收藏
得分:0 
回复 16楼 吹水佬
实在不好意思,很长时间没有登录论坛了,我刚看到,真的非常感谢,您太好了!
2017-08-30 14:56
快速回复:系统环境下如何判断VFP表单窗口处于激活状态?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019779 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved