在"Borland"C++ Builder 6中,如何更改button(TButton)的颜色?
我试过这种方式
button->Font->Color = clRed;
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
TButton是一个标准的Win32 BUTTON控件的薄包装,它从操作系统而不是VCL获得它的颜色.您无法设置Color标准TButton.该Color属性的存在只是因为它是从基类继承的.
话虽如此,Win32 BUTTON确实支持一种BS_OWNERDRAW风格.您可以使用SetWindowLong()它来启用它,然后将按钮子类化以处理WM_DRAWITEM消息,以便您可以根据需要绘制按钮.
下面是一个示例组件,它派生自TButton并实现BS_OWNERDRAW以公开工作颜色属性:TColorButton