delphicomboboxscrollbarvcl

Change the theme or colors of the scroll bar of TComboBox in Delphi


I want to make the scroll bar dark. I know that you can change the theme of the component, for example TMemo, it changes the scroll bar, like in the dark theme of Windows. But in TCombobox it does not change the scroll bar. Is there an option to change the standard combobox or do I need to write my own component?

I tried to catch the WM_CTLCOLOREDIT message, but as I understand it does not work on new Windows, for example Windows 11. I also tried to change the theme via SetWindowTheme, the ComboBox changes, but the scroll bar does not.


Solution

  • I recommend to use VCL Styles for this purpose so you have the control about all visual aspects and not only for the scrollbar in TComboBox.

    Check the documentation at: https://docwiki.embarcadero.com/RADStudio/Sydney/en/VCL_Styles_Overview