【已解决】屏幕水印
本帖最后由 anythinging 于 2019-12-1 08:47 编辑今天看到一个屏幕水印的程序,好象是ahk做的。自己尝试做了下,弄成一个全屏的gui,然后加点label文字,调成透明设置最前,结果文字发现影响点击。再看参考对象,好象在任何一个窗口上都不是最前,但却能显示出来,因此不影响点击。请各位大神指点,优化下,谢谢!
这个有90%神似了,但就差这么一点点儿
$WaterMark = GUICreate("水印",@DesktopWidth,@DesktopHeight,0,0,BitOR($WS_CHILD, $WS_POPUP),$WS_EX_LAYERED+$WS_EX_TOPMOST)
GUISetBkColor(0x444444)
_WinAPI_SetLayeredWindowAttributes($WaterMark, 0x444444)
$waterLabel001 = GUICtrlCreateLabel('水印测试水印测试水印测试水印测试水印测试', 200, 400, 1000, 100)
GUICtrlSetFont(-1, 32, 400, 1,'微软雅黑')
GUICtrlSetColor(-1, 0xFFFFFF);
GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
GUISetState(@SW_SHOW)
_WinAPI_SetLayeredWindowAttributes 第三个参数…… 10年前就有了 论坛搜索 穿透很简单 AHK代码发上来看下 haijie1223 发表于 2019-11-29 23:01
AHK代码发上来看下
没有源代码,就是个程序,它只能显示用户和ip,不能自定义内容,所以想试着自己写一个。 anythinging 发表于 2019-11-29 23:19
没有源代码,就是个程序,它只能显示用户和ip,不能自定义内容,所以想试着自己写一个。
那就发上exe来 anythinging 发表于 2019-11-29 23:19
没有源代码,就是个程序,它只能显示用户和ip,不能自定义内容,所以想试着自己写一个。
1
本帖最后由 anythinging 于 2019-11-30 17:09 编辑
afan 发表于 2019-11-30 12:00
10年前就有了 论坛搜索 穿透很简单
感谢指点!可以了,还有个问题,怎样能把这个label字做的透明些呢?这个程序的字好象是空心的,查了公共样式和扩展样式好象都达不到效果。 anythinging 发表于 2019-11-30 11:45
1
你发的程序就是一个自绘文字和一个 UpdateLayeredWindow分层。 afan 发表于 2019-11-30 17:25
_WinAPI_SetLayeredWindowAttributes 第三个参数……
还想请教个问题,能否将
$waterLabel001 = GUICtrlCreateLabel('水印测试水印测试水印测试水印测试水印测试', 200, 400, 1000, 100)
调整下角度?谢谢! haijie1223 发表于 2019-11-30 21:29
你发的程序就是一个自绘文字和一个 UpdateLayeredWindow分层。
谢谢,能用简单的代码实现吗? anythinging 发表于 2019-12-1 10:15
谢谢,能用简单的代码实现吗?
a版给你的代码就是简单地,你上传的那个exe的代码,比这个要麻烦的多。一堆的gdi。 anythinging 发表于 2019-12-1 08:54
还想请教个问题,能否将
$waterLabel001 = GUICtrlCreateLabel('水印测试水印测试水印测 ...
控件不能旋转,这些都是画上去的。
本来 SetLayeredWindowAttributes 这种靠滤色完成透明的就不适合文本,会有锯齿或毛边
要想完美,都得自行绘制,那样既美观还可以各种变形,包括使用路径绘制中空文字等等
多看看帮助文档里面关于 GDI GDI+ API 绘制文本方面的示例,论坛也有N多绘制文本字符串的帖子
作品功能越简单就越要用心做到完美,否则就是简陋了 明白了,感谢各位的指点!
页:
[1]