标准 Windows 选择颜色对话框不允许输入 3 位颜色代码

标准 Windows 选择颜色对话框不允许输入 3 位颜色代码

标准 Windows 7选择颜色对话框允许我在文本字段中输入 2 位数字色调饱和亮度红色的绿色的蓝色的即使每个字段的可能值范围是一个字节,即0- 255

当我从中选择特定颜色时基本颜色或者从颜色矩阵中,它用正确的值填充文本字段(见下图)但我无法手动输入 3 位数字。

它看起来像输入文本框红色的/绿色的/蓝色的色调/饱和/亮度值的最大文本长度设置为 2 个字符。无法通过手动输入或从剪贴板粘贴等方式输入 3 位数字。当我将数字粘贴255到所有三个颜色的文本框中时,所选文本框几乎是黑色的,而不是白色,因为它在粘贴过程中剪切了最后一位数字,即粘贴25而不是255

这样,几乎不可能选择特定的颜色(除非它是基本颜色)。我必须尝试使用​​矩阵和滑块尽可能地获得接近我想要的颜色。

无论如何,有可能修复它吗?

标准 Windows 选择颜色对话框

笔记:Windows 10 已修复该对话框并允许我手动输入 3 位数字。

答案1

有可能是某种病毒(可能性很小)。有办法替换 Win10 中的颜色选择器,所以我也认为 Win7 中也可能发生同样的事情。
如何更改 Windows 10 默认颜色选择器

进一步阅读/搜索后,看起来 Win7 也有方法可以做到这一点。
有没有办法更改 Windows 默认的颜色选择器?

我不确定更换颜色选择器会有什么好处,除非它是一个作为 Windows“服务”运行的受感染部件,并且可以做它想做的“任何事情”。我建议进行病毒和恶意软件扫描以排除这种可能性。

另一方面,似乎其他人自 2010 年以来就遇到了这个问题。这里的发帖人最终恢复了 Win7,大概是使用备份或还原点,并解决了他们的问题。这可能是一个糟糕的 Win 更新,但在 Win7 支持时间范围内,我很难相信这一点。它还没有结束(2020 年 1 月),但类似的更新不太可能以与 2010 年相同的方式杀死颜色选择器。这更可能是一个已知的错误,微软认为它不够有趣或问题性,不足以真正修复。
https://www.sevenforums.com/general-discussion/96918-problem-entering-rgb-values-color-picker.html

上述用户在微软自己的论坛上提出了这个问题,但他们也无法给出完整的答案。

如果您使用主题,尤其是 Aero 主题,则高级外观设置中的许多设置不会发生更改。但是,这不应该导致您所描述的行为吗?

打开控制面板/操作中心。展开维护部分并单击查看可靠性监视器。查找最近的“X”错误图标。单击错误图标以查看详细信息。

您可能还想检查“管理工具/事件查看器”。在“自定义视图/管理事件”中查找任何记录的错误。如果您发现任何似乎与此问题相关的错误,请双击该错误以查看详细信息。

另一位用户也建议在 2015 年更改字体。

https://answers.microsoft.com/en-us/windows/forum/all/cannot-enter-3-digit-values-in-windows-7-color/9f60af8f-3ece-45cf-b249-436030822519

有了这些新知识,我建议你继续寻找颜色选择器的替代品,不管它是错误还是病毒。你可能会少些烦恼,而且可以使用更好的调色板。

答案2

在 Windows 7 注册表编辑器中,检查以下项是否已被修改:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes

注册表

尝试将其恢复为默认值,即 [首先] MS Shell Dlg -> Microsoft Sans Serif — 如果您足够勇敢或/并且有时间玩,也可以尝试其他值。[结果应该立即可见 — 即使没有尝试,在注销并重新登录并打开 Windows 颜色选择器后,您应该会在这些数字的右侧看到足够的空间,在各自的字段中。]

答案3

我无法重现此问题,并且它在我的 Windows 7 虚拟机中运行良好。
以下是证据:

在此处输入图片描述

您的 Windows 通用对话框 DLL 副本似乎已损坏。此 DLL 位于 中 C:\Windows\System32\comdlg32.dll。如果它未损坏,则其他一些 DLL 已损坏,这种情况可能很难手动修复。

由于这是 Windows 7,因此安装很可能不是最近的,并且可能具有很长的历史记录。在这种情况下,我不建议重新安装 Windows,因此以下是下一步最佳步骤:

  • 运行chkdsk并检查系统盘的SMART数据。

  • 使用多种知名产品进行防病毒检查,包括 Malwarebytes

  • 在提升的命令提示符中运行以下命令并重复,直到不再发现错误:

    sfc /scannow
    dism /Online /Cleanup-Image /CheckHealth
    dism /Online /Cleanup-Image /ScanHealth
    

    如果 DISM 发现任何错误,还请运行:

    dism /Online /Cleanup-Image /RestoreHealth
    

    对于跑步sfc /scannow,请参阅此教程

  • 从另一台 Windows 7 计算机复制comdlg32.dll,位数相同(32 位或 64 位)。

  • 跑步修复安装

我建议在开始之前进行认真的备份,包括系统磁盘的备份映像,但为此使用第三方产品而不是 Windows Backup。选择具有恢复启动媒体的备份产品,以防万一。

答案4

我在应用了几个修补程序后遇到了同样的问题 - 但无法确定其中哪一个是原因。唯一可见的线索是文件版本c:\windows\syswow64\comdlg32.dll-6.1.7601.17514(485 888 字节)
当我用较新版本替换该文件时6.1.7601.23403(486 400 字节) - 问题消失。

相关内容