TC官方合作论坛

 找回密码
 立即注册
查看: 1403|回复: 1

[功能] 仿QQ吸附屏幕改进版

[复制链接]
发表于 2015-4-27 16:22:22 | 显示全部楼层 |阅读模式
本帖最后由 itcfan 于 2015-4-27 16:28 编辑

功能 仿QQ隐藏边缘_初始化()
    线程开启("界面隐藏","")
    设置托盘("吸附界面",假)
结束

功能 界面隐藏()
    变量 hwnd,hwnds,宽,高,窗口宽,窗口高,x,y,父窗口句柄,孩子窗口句柄
    hwnds=窗口获取自我句柄()
    窗口置顶(hwnds,真)
    循环(真)
        动态库调用(获取资源路径("rc:dlltest.dll"),"int","ShowInTaskbar","int",hwnds,"int",0)
        系统获取分辨率(宽,高)
        窗口获取大小(hwnds,窗口宽,窗口高)
        hwnd=窗口获取鼠标所在句柄()
        孩子窗口句柄=hwnd
        遍历(变量 i = 0; i < 10; i++)
            父窗口句柄=窗口获取父窗口(孩子窗口句柄)
            如果(父窗口句柄>0)
                孩子窗口句柄=父窗口句柄
            否则如果(孩子窗口句柄>0)         
                hwnd=孩子窗口句柄
                跳出
            结束
        结束

        窗口获取位置(hwnds,x,y)        
        如果(hwnd!=hwnds)//各方向隐藏
            如果(y<=0)
                窗口设置位置(hwnds,x,-窗口高+5)
            否则如果(x<=0&&y>0)
                窗口设置位置(hwnds,-窗口宽+5,y)
            否则如果(x>=宽-窗口宽&&y>0)
                窗口设置位置(hwnds,宽-5,y)
            结束
        否则//各方向显示
            如果(y<=0)
                窗口设置位置(hwnds,x,0)
            否则如果(x<=0&&y>0)
                窗口设置位置(hwnds,0,y)
            否则如果(x>=宽-窗口宽&&y>0)
                窗口设置位置(hwnds,宽-窗口宽,y)
            结束
        结束
        等待(300)
    结束
结束

===========================================================

红色是修改的地方,效果是:
1、任务栏不出现标题。
2、窗口置顶方便出现。
3、增加托盘图标显示。
虽然只是增加几行代码,但也死了不少脑细胞!{:soso_e199:}

还需要改进问题:
1、不是吸附屏幕时,窗口置顶会影响其它窗口。(想了半天没想到怎么解决:吸附时置顶,不是时取消置顶的方法,高手完善吧!)
2、双击托盘不会出现窗口。(没托盘源码,高手完善吧!)
3、软件最小化时,如吸附了屏幕,双击托盘闪一下就吸附屏幕了。(没托盘源码,高手完善吧!)


PS:管理员老大,TC5帮助文档的悬浮窗口代码好像有BUG啊!





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

发表于 2015-4-27 17:57:30 | 显示全部楼层
,TC5帮助文档的悬浮窗口代码好像有BUG啊!
那个89行,i=1错了,提交几次了,也没见更改过
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-5-19 17:55 , Processed in 0.038688 second(s), 23 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表