Set window border and title bar colors?

Everything else that doesn't fall into one of the other PB categories.
halo
Enthusiast
Enthusiast
Posts: 104
Joined: Mon Jan 26, 2004 2:49 am

Set window border and title bar colors?

Post by halo »

Anyone know how to do this? I already know how to set the background color.

Here is code for a partially colored window and menu. But I want the borders and back ground and stuff to change, too:

Code: Select all

#MIM_BACKGROUND = 2               ; applies to menubar background
#MIM_APPLYTOSUBMENUS = $80000000  ; applies to submenu items

Structure myMENUINFO
  cbSize.l
  fMask.l
  dwStyle.l
  cyMax.l
  hbrBack.l
  dwContextHelpID.l
  dwMenuData.l
EndStructure

hwnd=OpenWindow(0, 200, 200, 400, 300, #PB_Window_SystemMenu+#PB_Window_Sizegadget, "Menu Image Background")

brus=CreateSolidBrush_(RGB(64,64,64))

SetClassLong_(WindowID(),#GCL_HBRBACKGROUND,brus)

hMenu = CreateMenu(0, WindowID())
MenuTitle("Title 1")
MenuItem(1, "Item Number 1" + Chr(9) + "Ctrl+1")
MenuItem(2, "Item Number 2" + Chr(9) + "Ctrl+2")
MenuItem(3, "Item Number 3" + Chr(9) + "Ctrl+3")
MenuItem(4, "Item Number 4" + Chr(9) + "Ctrl+4")
MenuTitle("Title 2")
MenuItem(5, "Item Number 5" + Chr(9) + "Ctrl+5")
MenuItem(6, "Item Number 6" + Chr(9) + "Ctrl+6")
MenuItem(7, "Item Number 7" + Chr(9) + "Ctrl+7")
MenuItem(8, "Item Number 8" + Chr(9) + "Ctrl+8")

rect.rect
rect\left=0
rect\top=0
rect\right=200
rect\bottom=200

myMenu.myMENUINFO
myMenu\cbSize=SizeOf(myMENUINFO)
myMenu\fMask=#MIM_BACKGROUND+#MIM_APPLYTOSUBMENUS
myMenu\hbrBack=brus

SetMenuInfo_(hMenu, myMenu)
SetMenu_(WindowID(),hMenu)

Repeat
Until WaitWindowEvent()=#PB_Event_CloseWindow
Indiepath.t
New User
New User
Posts: 1
Joined: Sun Nov 21, 2004 11:51 am

Post by Indiepath.t »

:D Halo bung this in your code.

Code: Select all

b = RGB(255,0,0)
a = #COLOR_ACTIVEBORDER
SetSysColors_(1, @a, @b)
Here are the elements

COLOR_3DDKSHADOW Dark shadow for three-dimensional display elements.
COLOR_3DFACE, COLOR_BTNFACE Face color for three-dimensional display elements and for dialog box backgrounds.
COLOR_3DHILIGHT, COLOR_3DHIGHLIGHT, COLOR_BTNHILIGHT, COLOR_BTNHIGHLIGHT Highlight color for three-dimensional display elements (for edges facing the light source.)
COLOR_3DLIGHT Light color for three-dimensional display elements (for edges facing the light source.)
COLOR_3DSHADOW, COLOR_BTNSHADOW Shadow color for three-dimensional display elements (for edges facing away from the light source).
COLOR_ACTIVEBORDER Active window border.
COLOR_ACTIVECAPTION Active window title bar.

Specifies the left side color in the color gradient of an active window's title bar if the gradient effect is enabled.

Windows NT and Windows 95: This remark does not apply.

COLOR_APPWORKSPACE Background color of multiple document interface (MDI) applications.
COLOR_BACKGROUND, COLOR_DESKTOP Desktop.
COLOR_BTNTEXT Text on push buttons.
COLOR_CAPTIONTEXT Text in caption, size box, and scroll bar arrow box.
COLOR_GRADIENTACTIVECAPTION Right side color in the color gradient of an active window's title bar. COLOR_ACTIVECAPTION specifies the left side color. Use SPI_GETGRADIENTCAPTIONS with the SystemParametersInfo function to determine whether the gradient effect is enabled.

Windows NT and Windows 95: This value is not supported.

COLOR_GRADIENTINACTIVECAPTION Right side color in the color gradient of an inactive window's title bar. COLOR_INACTIVECAPTION specifies the left side color.

Windows NT and Windows 95: This value is not supported.

COLOR_GRAYTEXT Grayed (disabled) text. This color is set to 0 if the current display driver does not support a solid gray color.
COLOR_HIGHLIGHT Item(s) selected in a control.
COLOR_HIGHLIGHTTEXT Text of item(s) selected in a control.
COLOR_HOTLIGHT Color for a hot-tracked item. Single clicking a hot-tracked item executes the item.

Windows NT and Windows 95: This value is not supported.

COLOR_INACTIVEBORDER Inactive window border.
COLOR_INACTIVECAPTION Inactive window caption.

Specifies the left side color in the color gradient of an inactive window's title bar if the gradient effect is enabled.

Windows NT and Windows 95: This remark does not apply.

COLOR_INACTIVECAPTIONTEXT Color of text in an inactive caption.
COLOR_INFOBK Background color for tooltip controls.
COLOR_INFOTEXT Text color for tooltip controls.
COLOR_MENU Menu background.
COLOR_MENUHILIGHT The color used to highlight menu items when the menu appears as a flat menu (see SystemParametersInfo). The highlighted menu item is outlined with COLOR_HIGHLIGHT.

Windows 2000/NT and Windows Me/98/95: This value is not supported.

COLOR_MENUBAR The background color for the menu bar when menus appear as flat menus (see SystemParametersInfo). However, COLOR_MENU continues to specify the background color of the menu popup.

Windows 2000/NT and Windows Me/98/95: This value is not supported.

COLOR_MENUTEXT Text in menus.
COLOR_SCROLLBAR Scroll bar gray area.
COLOR_WINDOW Window background.
COLOR_WINDOWFRAME Window frame.
COLOR_WINDOWTEXT Text in windows.
halo
Enthusiast
Enthusiast
Posts: 104
Joined: Mon Jan 26, 2004 2:49 am

Post by halo »

I didn't ask how to change the system colors, I asked how to change the colors for ONE window.
Post Reply