为什么 Windows 颜色方案对话框中有一个“消息框文本”项?

为什么 Windows 颜色方案对话框中有一个“消息框文本”项?

在里面高级外观对话框中,您可以通过设置众多 UI 控件的颜色来编辑 Windows 的配色方案。

令人困惑的是消息框(对话框)。除3D 对象(按钮等)和标题栏(所有带有标题栏的窗口共享),只有一个具有颜色的消息框项:消息框文本

问题是消息框文本颜色也会改变通用窗口文本颜色,反之亦然。换句话说,您不能将消息框文本颜色设置为与窗口文本颜色不同的颜色。

此外,注册表( )中也没有任何项目HKEY_CURRENT_USER\Control Panel\ColorsWindows API与对话框(静态)文本颜色相对应。

有些颜色高级外观对话框是动态设置或完全禁用的(有些根本不可用,需要通过其他方式设置)但消息框文本颜色不属于这些。

有谁知道微软为什么还要费心提供单独设置对话框文本颜色的功能,而对话框文本本身却没有颜色?

高级外观对话框

附加问题:为什么滚动条的颜色框被禁用,而滚动条颜色条目(COLOR_SCROLLBAR)?

答案1

我认为,这个对话框可以追溯到 Windows 的几个主要版本,也许可以追溯到 3.1 或 3.0。它肯定是在 Windows 95 中出现的。当然,那时所有可设置的项目都是有意义的。注册表中的底层值实际上可以追溯到 Windows 1.0。

但微软从来没有对这个对话框进行过重大的修改,而是对可设置项列表进行了一些小的修改,或者添加了一个全新的对话框,以便更简单地设置颜色(特别是配色方案)。

此外,在此期间,Windows 使用某些颜色项的方式也发生了变化。这就是为什么设置滚动条颜色不再起作用的原因。也可能是为什么设置消息框文本颜色会改变窗口文本颜色的原因。

相关内容