Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как получить цвет, по системной константе 
:(
    Опции темы
Plamenk
Дата 30.3.2005, 16:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 258
Регистрация: 18.2.2003

Репутация: нет
Всего: 3



Всем привет!

Собственно вопрос в том, как получить по константе vbWindowBackground соответствующий ей цвет!

Заранее БОЛЬШОЕ СПАСИБО!
PM MAIL   Вверх
boevik
Дата 30.3.2005, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1452
Регистрация: 31.5.2004
Где: Израиль

Репутация: 12
Всего: 35



SystemColorConstants.vbWindowBackground - возвращает цвет определенный в системе.


--------------------
Никогда не говори никогда
PM MAIL WWW   Вверх
cardinal
Дата 30.3.2005, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



ColorsConstantValueDescriptionvbBlack&H0BlackvbRed&HFFRedvbGreen&HFF00GreenvbYellow&HFFFFYellowvbBlue&HFF0000BluevbMagenta&HFF00FFMagentavbCyan&HFFFF00CyanvbWhite&HFFFFFFWhiteSystem ColorsConstantValueDescriptionvbScrollBars&H80000000Scroll bar colorvbDesktop&H80000001Desktop colorvbActiveTitleBar&H80000002Color of the title bar for the active windowvbInactiveTitleBar&H80000003Color of the title bar for the inactive windowvbMenuBar&H80000004Menu background colorvbWindowBackground&H80000005Window background colorvbWindowFrame&H80000006Window frame colorvbMenuText&H80000007Color of text on menusvbWindowText&H80000008Color of text in windowsvbTitleBarText&H80000009Color of text in caption, size box, and scroll arrowvbActiveBorder&H8000000ABorder color of active windowvbInactiveBorder&H8000000BBorder color of inactive windowvbApplicationWorkspace&H8000000CBackground color of multiple-document interface (MDI) applicationsvbHighlight&H8000000DBackground color of items selected in a controlvbHighlightText&H8000000EText color of items selected in a controlvbButtonFace&H8000000FColor of shading on the face of command buttonsvbButtonShadow&H80000010Color of shading on the edge of command buttonsvbGrayText&H80000011Grayed (disabled) textvbButtonText&H80000012Text color on push buttonsvbInactiveCaptionText&H80000013Color of text in an inactive captionvb3DHighlight&H80000014Highlight color for 3D display elementsvb3DDKShadow&H80000015Darkest shadow color for 3D display elementsvb3DLight&H80000016Second lightest of the 3D colors after vb3Dhighlightvb3DFace&H8000000FColor of text facevb3Dshadow&H80000010Color of text shadowvbInfoText&H80000017Color of text in ToolTipsvbInfoBackground&H80000018Background color of ToolTips


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Plamenk
Дата 31.3.2005, 07:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 258
Регистрация: 18.2.2003

Репутация: нет
Всего: 3



Народ Вы меня не поняли, что SystemColorConstants.vbWindowBackground, что vbWindowBackground возвращают константу &H80000005, хотя по правде эта константа у меня в системе соответствует белому цвету &HFFFFFF&
PM MAIL   Вверх
Exception
Дата 31.3.2005, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 7
Всего: 186



Цитата
GetSysColor

The GetSysColor function retrieves the current color of the specified display element. Display elements are the parts of a window and the display that appear on the system display screen.

Код

DWORD GetSysColor(
  int nIndex
);


Parameters
nIndex
[in] Display element whose color is to be retrieved. This parameter can be one of the following values. Value Meaning
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.

Return Values
The function returns the red, green, blue (RGB) color value of the given element.

If the nIndex parameter is out of range, the return value is zero. Because zero is also a valid RGB value, you cannot use GetSysColor to determine whether a system color is supported by the current platform. Instead, use the GetSysColorBrush function, which returns NULL if the color is not supported.

Remarks
System colors for monochrome displays are usually interpreted as shades of gray.

To paint with a system color brush, an application should use GetSysColorBrush(nIndex), instead of CreateSolidBrush(GetSysColor(nIndex)), because GetSysColorBrush returns a cached brush, instead of allocating a new one.

--------------------------------------------------------------------------------------------------------------------
Расположи на форме Command1 и Picture1.
Код

Private Declare Function GetSysColor Lib "user32.dll" (ByVal nIndex As Long) As Long
Private Const COLOR_WINDOW As Long = 5

Private Sub Command1_Click()
Dim col As Long
col = GetSysColor(COLOR_WINDOW)
Picture1.BackColor = col
End Sub

PM   Вверх
Plamenk
Дата 1.4.2005, 08:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 258
Регистрация: 18.2.2003

Репутация: нет
Всего: 3



Спасибо Run-time error!

Хотя этот спосбо я знал!
Просто думал что есть какие-то стандартные способы VB получения цвета по константе!

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0480 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.