如何使桌面上的快捷键的文字部分透明(100分)

  • 主题发起人 主题发起人 urus
  • 开始时间 开始时间
U

urus

Unregistered / Unconfirmed
GUEST, unregistred user!
如何使桌面上的快捷键的文字部分透明。<br>我看到有些软件能做到,但不知是什么原理。
 
应该是该注册表啦!
 
肯定不是注册表,我找过。<br>实现这个功能的软件有几百K,而且一定要<br>运行才有效
 
是什么软件呢?
 
没见过这样的软件,注册表应该不会<br>把桌面图象截取了,再获得桌面所有快捷方式,自己画?太过分了吧:)
 
软件叫DeskColor 我现在就上传到我的主页<br>urus.163.net
 
163怎么连不上,只好换个地址<br>载Deskcolor 到 www.zg169.net/~urus
 
&nbsp; &nbsp;我这也有一个软件,TransText.很好用.不知是使用了什么技术?
 
据我猜想,原理可能是这样:<br>1、做一个钩子截获发往Desktop window的wm_paint消息。<br>2、对所有Desktop Window上的文字文本,用brush.style= transparent重绘。<br><br>不过如何将快捷方式显示在桌面上?我也不太清楚,所以以上纯属瞎猜了。
 
我的系统出错时快捷方式的文字变成透明的
 
urus,谢谢你的好意。
 
哈哈,100%的是注册表!我见过这个说明的。哈哈哈……<br><br>不过忘了在哪儿。我找找去!
 
答案已经由O*O在另一个问题中回答了:<br>procedure Tform.Button5Click(Sender: TObject);<br>var wnd:HWND;<br>begin<br>&nbsp; &nbsp;Wnd := GetDesktopWindow;<br>&nbsp; &nbsp;Wnd := FindWindowEx(Wnd, 0, 'Progman', nil);<br>&nbsp; &nbsp;Wnd := FindWindowEx(Wnd, 0, 'SHELLDLL_DefView', nil);<br>&nbsp; &nbsp;Wnd := FindWindowEx(Wnd, 0, 'SysListView32', nil);<br>&nbsp; &nbsp;SendMessage(Wnd, $1026, 0, $FFffffff); //this<br>&nbsp; &nbsp;SendMessage(Wnd, $1024, 0, $00FFFFFF);<br>&nbsp; &nbsp;InvalidateRect(Wnd, nil, TRUE);<br>end;<br>
 
后退
顶部