формат цвета. (HEX и тп)

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Grover
Новичок
Новичок
 
Сообщения: 47
Зарегистрирован: 29.03.2007 (Чт) 7:46

формат цвета. (HEX и тп)

Сообщение Grover » 28.12.2007 (Пт) 9:20

элемент CommonDialog1.Color возвращает длинную цифирку обозначающую цвет.

Моя программа генерирует HTML страничку:

Print #40, "<td bgcolor=#""" & Hex(CommonDialog1.Color) & """>&nbsp;</td>"

проблема в том, что цвета не совпадают.

к примеру синий (должен быть #0000FF):

CommonDialog1.Color = 16711680
Hex(CommonDialog1.Color)=FF0000

как правильно преобразовать десятичное значение цвета в шестнадцатеричное?

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 28.12.2007 (Пт) 9:27


Grover
Новичок
Новичок
 
Сообщения: 47
Зарегистрирован: 29.03.2007 (Чт) 7:46

Сообщение Grover » 28.12.2007 (Пт) 9:42

Прошу прощения за некомпетентность.
Вот что я нашел:

Код: Выделить всё
Public Function L2H(ByVal color As Long) As String
    L2H = Hex(color Or &H10000000)
    L2H = """#" + Mid$(L2H, 7, 2) + Mid$(L2H, 5, 2) + Mid$(L2H, 3, 2) + """"
End Function

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 28.12.2007 (Пт) 9:58

Lumen
Когда я вижу, что ты всякий раз, когда это возможно, накручиваешь посты тем, что пишешь, где находится поиск (и какого он цвета) - я молчу. Но когда ссылки ведут на поиск по совершенно левой комбинации слов - я молчать не могу.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 28.12.2007 (Пт) 10:35

Недавно было.
Лучший способ понять что-то самому — объяснить это другому.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 28.12.2007 (Пт) 10:42

Там кстати ошибка.
Antonariy писал(а):В представлении VB цвета идут в последовательности BGR, красный - самый младший байт.


В представлении VB идут в последовательности RGB. Просто в представлении процессора Intel байты идут в порядке <младший><старший>
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 28.12.2007 (Пт) 14:53

Значит меня таки ввели в заблуждение там... ай-ай-ай :)
Salus populi suprema lex

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 28.12.2007 (Пт) 18:31

Хакер
Причем тут левые слова в поиске? В топике описывается как значение цвета, которое содержится в свойстве Color после вызова CommonDialog.ShowColor, разложить на составляющие. Неужели это такая большая проблема перевести значения красного, зеленого и синего в HEX и получившиеся строки сложить в последовательности Red + Green + Blue? Кстати, попробуй введи в поиске те "левые" слова, которые я ввел и удивишься, увидев в числе первых тем (у меня она вообще первая была) вот эту самую тему. Так что ИМХО слова в поиске имеют к теме прямое отношение. Или я где-то неправ?
По поводу накручивания постов - с этого места поподробней откуда появилось такое мнение? Или в моих постах не содержится информации по теме?

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 28.12.2007 (Пт) 19:02

Я имею ввиду хайлайт слов CommonDialog ShowColor. Эти слова не имеют ни малейшего прямого отношения к вопросу.

По поводу накручивания постов, относительно отсылов в поиск, наверное с кем-то ступал.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 28.12.2007 (Пт) 19:11

Согласен, к вопросу эти слова не имеют прямого отношения, я помнил, что читал топик с подобным вопросом и ввел в поиске первое что пришло в голову. И в итоге кстати все-таки вышел на на тот топик, который искал.

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 29.12.2007 (Сб) 8:15

dr.MIG писал(а):Значит меня таки ввели в заблуждение там... ай-ай-ай :)
Надеюсь, из-за этого ничего не сломалось? :)
Лучший способ понять что-то самому — объяснить это другому.

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 29.12.2007 (Сб) 8:58

Нет, не сломалось. :) Просто вдруг я бы обманул своих студентов... :)
Salus populi suprema lex


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 64

    TopList