c++ - 启用视觉样式后我可以覆盖控件的颜色吗?

标签 c++ c++builder vcl

我在 C++ Builder 2010 中有一个应用程序,它启用了视觉样式/运行时主题,可以使用按钮和选项卡的运行时外观。但是,如果可能的话,我有一组复选框 (TCheckBox),我想覆盖它们的运行时样式。

我的复选框用于切换一些图形叠加层的各种颜色。当我禁用运行时主题时,我可以设置复选框的背景以显示它将启用哪种颜色,如下所示: checkboxes with a custom background color

启用运行时主题时是否可以实现相同的效果?

多亏了stukelly,我可以有选择地禁用各个控件的视觉样式,但在调用 SetWindowTheme 后,我似乎无法修改该控件的颜色或其他样式,如下所示:

SetWindowTheme(CheckBox1->Handle, L" ", ""); 

最佳答案

您可以尝试使用 SetWindowTheme 禁用每个复选框的主题功能。

  SetWindowTheme(CheckBox1->Handle, NULL, ""); 

我不确定第二个参数是否需要为 NULLL"",如文档所述。

  SetWindowTheme(CheckBox1->Handle, L" ", ""); 

我使用以下引用资料来回答这个问题。
http://www.delphigroups.info/3/7/54654.html
borland.public.delphi.ide.general

关于c++ - 启用视觉样式后我可以覆盖控件的颜色吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6021888/

相关文章:

分离的 cpp 上的 C++ ostream 重载

c++ - 将韩语单词分割成单个音节 - C++/Python

c++ - vs2005和vs2010模板函数的优先级不同

Embarcadero C++ Builder 中的 OpenCV 2.3

windows - 如何像谷歌浏览器一样在标题栏中绘制按钮?

delphi - 如何在 Delphi 2010 中的 TTrackBar 上设置自定义刻度?

delphi - 在 VirtualTreeView 中跳过/禁用节点

c++ - 索引大型 txt 文件

c++ - 使用 boost::iterator_facade<> 为迭代器返回 ref 但为 const_iterator 返回 const_ref?

c++builder - C++ Builder 不会在断点处停止