Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.04.2009, 22:48   #1
megazz13
 
Регистрация: 23.03.2009
Сообщений: 6
По умолчанию C# и HEX

Народ, помогите плиз
у мя из dataGridViev в цикле читается столбик, в котором записаны цвета (цвет записан либо ARGB hex кодом, либо названием) мне надо потом этим цветом рисовать...

string s = dataGridView1.Rows[i].Cells[6].Value.ToString();
string s1 = s[0] + s[1];
string s2 = s[2] + s[3];
string s3 = s[4] + s[5];
string s4 = s[6] + s[7];
try
{
int A = Convert.ToInt32(s1,16);
int R = Convert.ToInt32(s2,16);
int G = Convert.ToInt32(s3,16);
int B = Convert.ToInt32(s4,16);
BrushEl = new SolidBrush(Color.FromArgb(A,R,G,B)) ;
}
catch
{
BrushEl = new SolidBrush(Color.FromName(Convert.T oString(dataGridView1.Rows[i].Cells[6].Value)));
}

программа даже не компилируется, жалуется на s[0] и другие s[], типа они int формата...
Иисус изменил твою жизнь, сохранить? (Y/N)
megazz13 вне форума Ответить с цитированием
Старый 02.04.2009, 23:36   #2
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Для цвета есть конвертер

Код:
            string s = "0102FF04";
            ColorConverter x = new ColorConverter();
            Color c = (Color)x.ConvertFrom("0x"+s);
            Console.WriteLine(c);
            
            c = (Color)x.ConvertFrom("AliceBlue");
            Console.WriteLine(c);
и исключение генерировать излишне. Проще проверить:

Код:
            int n;
            if (Int32.TryParse(s, System.Globalization.NumberStyles.HexNumber, null, out n))
По поводу строки. Можно так:
string s1 = ""+s[0]+s[1];
но лучше этого не делать.
alexBlack вне форума Ответить с цитированием
Старый 03.04.2009, 00:32   #3
megazz13
 
Регистрация: 23.03.2009
Сообщений: 6
По умолчанию

огромное спасибо! приятно ощущать себя имбицилом))
а вот про string s1=""+s[0]+s[1]; я действительно прогнал
Иисус изменил твою жизнь, сохранить? (Y/N)
megazz13 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
hex строка Satorin Общие вопросы Delphi 14 29.12.2008 13:50
Число(word) -> HEX Kirill6666 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 02.06.2008 22:39
HEX редактор Simply-Art Помощь студентам 1 08.12.2007 13:18
Text -> Hex AnK0r Общие вопросы Delphi 3 07.12.2007 20:36
HEX ->DEC 69_rus Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 13.06.2007 20:44