[原]排错实战——你知道拖动窗口时只显示虚框怎么设置吗?

本文介绍如何在Windows中设置拖动窗体时的显示效果,包括显示窗体内容或虚框的方法。通过注册表项HKCUControlPanelDesktopDragFullWindows的值进行控制,值为1时显示内容,值为0时仅显示虚框。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

不知道大家有没有留意过,我们在拖动窗体的时候,有时候显示的是虚框,有时候显示的是窗体内容。可能有的读者听的不是太明白,没关系,一图胜千言。请看图:

拖动时显示窗体内容
拖动时不显示窗体内容,只显示虚框

这下应该知道我在说什么了吧,但是具体是哪个选项跟拖动时的显示效果有关呢?????

设置

一个偶然的机会,我发现在性能选项里可以设置拖动时的显示效果。

我的电脑右键属性,点击高级系统设置按钮,在弹出的系统属性对话框中的高级 Tab页下的 性能组,点击设置(S)...按钮,在弹出的性能选项对话框中,选择自定义(C)...,勾选拖动时显示窗口内容复选框。即可在拖动时显示窗口内容,取消勾选后,拖动时只会显示虚框。具体设置如下图:

drag-full-windows-setting

现在,我们知道在哪里设置了,如果用代码该怎么实现呢?我们知道,在windows下,很多设置都是保存在注册表中的。如果我们能找到对应的注册表项,那么我们用代码修改对应的注册表项就可以啦。但是这个设置对应的注册表项是哪个呢?我们应该怎么找到它呢?看过前面几篇排错文章的朋友一定猜到了——用process monitor啊!在继续阅读之前,强烈建议你自己动手实战一下。

小提示: 因为是保存设置到注册表,所以我们只关注注册表事件即可。

追本溯源

相信你已经自己动手找到关键的注册表项了。不过我还是把我的调查过程的录屏贴出来,方便没来得及手动实战的读者查阅。

show-full-windows-setting-screen-record

原来该设置对应的注册表项是 HKCU\Control Panel\Desktop\DragFullWindows。值为1时拖动时显示窗体内容,值为0时拖动时只显示虚框。

保存下面的代码为drag-full-window.reg,双击导入注册表即可(需要重启生效)。

Windows Registry Editor Version 5.00


[HKEY_CURRENT_USER\Control Panel\Desktop]
"DragFullWindows"="1"

知道对应的注册表项,用代码实现这个功能应该不难了吧?快快动手搞定它吧!

总结

  • windows的很多设置都存放在注册表里,我们通过GUI改变某项设置时,会更新对应对应的注册表值。

  • process monitor真是排错利器,心动了吗?赶快下载试用吧。

参考资料

  • 《Windows Sysinternals 实战指南》

猜你喜欢:

[原]排错实战——拯救加载调试符号失败的IDA

[原]排错实战——使用process explorer替换任务管理器

[原]排错实战——VS清空最近打开的工程记录

[原]排错实战——解决Tekla通过.tsep安装插件失败的问题

[原]排错实战——通过对比分析sysinternals事件修复程序功能异常

欢迎留言交流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值