Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 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-сайт: sharpc.livejournal.com
 Профиль | | #3
Добавлено: 28.02.10 10:52
Системные цвета это концепция со старых виндов, когда вся настройка внешнего вида окон сводилась к нескольким размерам, шрифтам и цветам. С XP внешний вид определяется темами.

Ответить

Номер ответа: 4
Автор ответа:
 Raider



Вопросов: 18
Ответов: 29
 Профиль | | #4 Добавлено: 28.02.10 10:56
А можно как-нибудь эти темы "разобрать"?

Ответить

Номер ответа: 5
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #5
Добавлено: 28.02.10 14:05
Декомпилировать, например.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам