Страница: 1 |
Страница: 1 |
Вопрос: Системные цвета в WinXP
Добавлено: 27.02.10 23:18
Автор вопроса: Raider
Приветствую.
Кто-нибудь знает где хранятся ВСЕ системные цвета для тем WinXP и выше. Попробовал следующий код:
Option Explicit
Private Declare Function SetSysColors Lib "user32" _
(ByVal nChanges As Long, lpSysColor As _
Long, lpColorValues As Long) As Long
Private Declare Function GetSysColor& Lib "user32" (ByVal nIndex As Long)
'Можно использовать следующие константы
Private Const COLOR_SCROLLBAR = 0 'The Scrollbar colour
Private Const COLOR_BACKGROUND = 1 'Colour of the background with no wallpaper
Private Const COLOR_ACTIVECAPTION = 2 'Caption of Active Window
Private Const COLOR_INACTIVECAPTION = 3 'Caption of Inactive window
Private Const COLOR_MENU = 4 'Menu
Private Const COLOR_WINDOW = 5 'Windows background
Private Const COLOR_WINDOWFRAME = 6 'Window frame
Private Const COLOR_MENUTEXT = 7 'Window Text
Private Const COLOR_WINDOWTEXT = 8 '3D dark shadow (Win95)
Private Const COLOR_CAPTIONTEXT = 9 'Text in window caption
Private Const COLOR_ACTIVEBORDER = 10 'Border of active window
Private Const COLOR_INACTIVEBORDER = 11 'Border of inactive window
Private Const COLOR_APPWORKSPACE = 12 'Background of MDI desktop
Private Const COLOR_HIGHLIGHT = 13 'Selected item background
Private Const COLOR_HIGHLIGHTTEXT = 14 'Selected menu item
Private Const COLOR_BTNFACE = 15 'Button
Private Const COLOR_BTNSHADOW = 16 '3D shading of button
Private Const COLOR_GRAYTEXT = 17 'Grey text, of zero if dithering is used.
Private Const COLOR_BTNTEXT = 18 'Button text
Private Const COLOR_INACTIVECAPTIONTEXT = 19 'Text of inactive window
Private Const COLOR_BTNHIGHLIGHT = 20 '3D highlight of button
Dim OldColor As Long
Private Sub Form_Load()
'Эапоминаем текущий цвет
OldColor = GetSysColor(COLOR_ACTIVECAPTION)
SetSysColors 1, COLOR_ACTIVECAPTION, RGB(255, 0, 0)
End Sub
Private Sub Form_Unload(Cancel As Integer)
'Восстанавливаем текущий цвет
SetSysColors 1, COLOR_ACTIVECAPTION, OldColor
End Sub
На сколько, я понял, здесь цвета только для классической темы. Например, для темы XP определить все цвета не получается. Что подскажите?
Ответы
Всего ответов: 5
Номер ответа: 1
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #1
Добавлено: 28.02.10 09:31
А какие тебе нужны "все" цвета в Windows XP?
Номер ответа: 2
Автор ответа:
Raider
Вопросов: 18
Ответов: 29
Профиль | | #2
Добавлено: 28.02.10 10:44
Например, при наведении на заголовок таблицы, содержащий список файлов, в проводнике при соответствующем виде (снизу заголовка появляется оранжевая полоска).
Номер ответа: 3
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #3
Добавлено: 28.02.10 10:52
Системные цвета это концепция со старых виндов, когда вся настройка внешнего вида окон сводилась к нескольким размерам, шрифтам и цветам. С XP внешний вид определяется темами.
Номер ответа: 4
Автор ответа:
Raider
Вопросов: 18
Ответов: 29
Профиль | | #4
Добавлено: 28.02.10 10:56
А можно как-нибудь эти темы "разобрать"?
Номер ответа: 5
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #5
Добавлено: 28.02.10 14:05
Декомпилировать, например.