Jump to content

changing system colours


Recommended Posts

i am trying to temporarily change a system colour and then change it back when the probram ends however all the SetSysColors seems to do is return a number it doesnt change any system colours or anything heres all the code for the system colour change

   Declare Function SetSysColors Lib "user32" Alias "SetSysColors" (ByVal nChanges As Long, ByVal lpSysColor As Long, ByVal lpColorValues As Long) As Long

   Public Const COLOR_SCROLLBAR = 0 'The Scrollbar colour
   Public Const COLOR_BACKGROUND = 1 'Colour of the background with no wallpaper
   Public Const COLOR_ACTIVECAPTION = 2 'Caption of Active Window
   Public Const COLOR_INACTIVECAPTION = 3 'Caption of Inactive window
   Public Const COLOR_MENU = 4 'Menu
   Public Const COLOR_WINDOW = 5 'Windows background
   Public Const COLOR_WINDOWFRAME = 6 'Window frame
   Public Const COLOR_MENUTEXT = 7 'Window Text
   Public Const COLOR_WINDOWTEXT = 8 '3D dark shadow (Win95)
   Public Const COLOR_CAPTIONTEXT = 9 'Text in window caption
   Public Const COLOR_ACTIVEBORDER = 10 'Border of active window
   Public Const COLOR_INACTIVEBORDER = 11 'Border of inactive window
   Public Const COLOR_APPWORKSPACE = 12 'Background of MDI desktop
   Public Const COLOR_HIGHLIGHT = 13 'Selected item background
   Public Const COLOR_HIGHLIGHTTEXT = 14 'Selected menu item
   Public Const COLOR_BTNFACE = 15 'Button
   Public Const COLOR_BTNSHADOW = 16 '3D shading of button
   Public Const COLOR_GRAYTEXT = 17 'Grey text, of zero if dithering is used.
   Public Const COLOR_BTNTEXT = 18 'Button text
   Public Const COLOR_INACTIVECAPTIONTEXT = 19 'Text of inactive window
   Public Const COLOR_BTNHIGHLIGHT = 20 '3D highlight of button
   Public Const COLOR_2NDACTIVECAPTION = 27 'Win98 only: 2nd active window color
   Public Const COLOR_2NDINACTIVECAPTION = 28 'Win98 only: 2nd inactive window color

   Public Commands As String = Command()

   Public Sub ChangeSystemColour(ByVal Red As Integer, ByVal Green As Integer, ByVal Blue As Integer)
       varColourChanged = True ' System Colours have Changed
       SetSysColors(1, COLOR_WINDOW, RGB(Red, Green, Blue))
   End Sub

Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...