Страница: 1 |
Страница: 1 |
Вопрос: Преобразование RGB в системный цвет
Добавлено: 19.02.10 22:17
Автор вопроса: Raider
Здравствуйте.
Мне необходимо преобразовать системный цвет (если я правильно его называю),например Command1.BackColorб, в цвет RGB. Я это делаю с помощью следующей функции:
Public Function DecToRGB(DecColor As Long) As String
Dim nRed As Integer
Dim nGreen As Integer
Dim nBlue As Integer
nRed = (DecColor And &HFF&)
nGreen = (DecColor And &HFF00&) / &H100
nBlue = (DecColor And &HFF0000) / &H10000
MsgBox DecColor & " " & RGB(nBlue, nRed, nGreen)
DecToRGB = "RGB(" & CStr(nRed) & ", " & CStr(nGreen) & ", " & CStr(nBlue) & ")"
End Function
Теперь мне нужно получить более темный оттенок того цвета что было. Допустим, я это сделал.
Теперь вопрос: а как конвертировать RGB в системный цвет?
Ответы
Всего ответов: 7
Номер ответа: 1
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #1
Добавлено: 19.02.10 22:30
Эм... Что значит RGB в системный цвет?
В смысле это?
Номер ответа: 2
Автор ответа:
Raider
Вопросов: 18
Ответов: 29
Профиль | | #2
Добавлено: 19.02.10 22:34
Я пробывал так. Почему-то DecColor и RGB(nRed, nGreen, nBlue) получаются разными цветами ((
Номер ответа: 3
Автор ответа:
Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #3
Добавлено: 19.02.10 22:57
Raider, нельзя какой попало цвет преобразовать в системный.
Преобразование из системного в RGB делается с помощью API OleTranslateColor
Номер ответа: 4
Автор ответа:
Raider
Вопросов: 18
Ответов: 29
Профиль | | #4
Добавлено: 19.02.10 23:00
Хорошо. А как Command1.BackColor придать новый цвет?
Номер ответа: 5
Автор ответа:
AWP
ICQ: 345685652
Вопросов: 96
Ответов: 1212
Web-сайт:
Профиль | | #5
Добавлено: 20.02.10 02:38
капитан Очевидность!)
Номер ответа: 6
Автор ответа:
Mikle
Вопросов: 5
Ответов: 134
Профиль | | #6
Добавлено: 20.02.10 11:26
Raider
В первом посту:
Тебе не кажется, что тут есть ошибка?
Номер ответа: 7
Автор ответа:
Raider
Вопросов: 18
Ответов: 29
Профиль | | #7
Добавлено: 20.02.10 11:31
Да,я знаю. Я это уже от нечего делать стал менять местами, а перед опубликованием здесь, забыл исправить.