2015-01-03 3 views
0

Выполнение некоторых цветовых операций, которые включают сохранение шестнадцатеричных значений цвета в переменных. Имеет проблему сохранения начального нуля для 1-16. Соответствующий раздел кода:Сохранять ведущие нули hex vb

 _coltable.Add("A", (Hex$(_color.A))) 
     _coltable.Add("R", (Hex$(_color.R))) 
     _coltable.Add("G", (Hex$(_color.G))) 
     _coltable.Add("B", (Hex$(_color.B))) 

Это обрезает пробелы LH на номера ниже 16. _coltable является словарь (строка, строка). _color, цветной объект. Текст ниже показывает консоль:

>> FUNCTION convert bg color to text and return 
Recived vars: col: Color [A=255, R=0, G=0, B=160] | coltype: ARGB | mask: {A}{R}{G}{B} | format: HEX 
FF{R}{G}{B} 
FF0{G}{B} 
FF00{B} 
FF00A0 
End of process. Output:FF00A0 
> END BG color to text 

Линии 3-6 показывают итеративный процесс - добавляет R и G как один ноль.

Пробовал различные вещи с помощью & s, Right и String.format. Не могу заставить его работать. Кто-нибудь получил волшебную палочку?

ответ

1

Попробуйте

_coltable.Add("A", _color.A.ToString("X2")) 

"X" Где обозначает формат шестигранного и "X2" указывает, что это будет шириной две цифры.

+0

Работа выполнена. Ты звезда. До этого был час поиска и экспериментов. Общение не мертво! большое спасибо. – stigzler

Смежные вопросы