我的代码如下: Window := FindWindow('Progman', 'Program Manager');
//找到桌面窗口
Window := FindWindowEx(Window, HWND(nil), 'SHELLDLL_DefView', '');
//找到放置桌面图标的ListView窗口
Window := FindWindowEx(Window, HWND(nil), 'SysListView32', ''); if Trans then //设置透明的文字背景色
ListView_SetTextBkColor(Window, $ffffffff) // back color
else //设置不透明的文字背景色
ListView_SetTextBkColor(Window, Background); // back color ListView_SetTextColor(Window, Forground); // foreground color
//重新绘制桌面图标
ListView_RedrawItems(Window, 0, ListView_GetItemCount(Window) - 1);
UpdateWindow(Window); //重新绘制窗口
//找到桌面窗口
Window := FindWindowEx(Window, HWND(nil), 'SHELLDLL_DefView', '');
//找到放置桌面图标的ListView窗口
Window := FindWindowEx(Window, HWND(nil), 'SysListView32', ''); if Trans then //设置透明的文字背景色
ListView_SetTextBkColor(Window, $ffffffff) // back color
else //设置不透明的文字背景色
ListView_SetTextBkColor(Window, Background); // back color ListView_SetTextColor(Window, Forground); // foreground color
//重新绘制桌面图标
ListView_RedrawItems(Window, 0, ListView_GetItemCount(Window) - 1);
UpdateWindow(Window); //重新绘制窗口
解决方案 »
- 求opengl功能代码--opengl高手请进
- 强行关闭程序的问题
- 如何打开工程文件本身的代码窗口?
- DBGrid问题,不难,会的快来抢分(最晚后天下午结贴).
- 用Delphi开发数据库的问题。
- 计算字段如何存回数据库
- 在家都好吗???
- 当我试作用缓存更新表,表能缓存,不能更新,错误码是 ‘table is read only’,or ‘不能更新操作’,我用了tdatabase,tquery, tupdatesp
- 为什么dbcheckbox总是灰色?
- 谁有.dll的登陆数据库的原代码吗?我想参考参考,我自己做的不是不能定位输入点就是内存地址错误?请多关照了。
- 请问哪里有delphi做的Mis系统下载,给点建议?
- 5岁小孩子,如何用一个语句表达N个相同控件?
要拦截他,可能需要用到subclass技术,
详见陈宽达著《Delphi深度历险》,里面有这方面的详细描述。:)
begin
form1.brush.style:=bsclear;
form1.borderstyle:=bsnone;
end;procedure createparams(var params:tcreateparams);override; //定义的过程
begin
inherited createparams(params);
params.exstyle:=WS_EX_transparent;
end;
你的代码我看不懂,那些变量是如何定义的?没法运行
To yxjjx(孤行者):
你的代码似乎对我的问题没有帮助。To All:希望各位高手能回答的详细些
http://202.103.69.33/cnshare/showsoft.php3?id=2586
http://www.csdn.net/soft/openfile.asp?kind=1&id=14320
它的桌面是用程序写的,可惜不能在W2K下运行?/