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

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

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.02.2011, 23:23   #1
Yokka
Пользователь
 
Регистрация: 23.03.2010
Сообщений: 44
По умолчанию не правильно работает GetPixel

Есть код
Код:
 
            Graphics l1 = pictureBox1.CreateGraphics();
            Bitmap b1 = new Bitmap(pictureBox1.Width, pictureBox1.Height, l1);
            Color col1 = new Color();
            Color col2 = Color.Yellow;
            SolidBrush sb1 = new SolidBrush(col2);
            l1.FillRectangle(sb1, 0, 0, 300, 300);
 
            col1 = b1.GetPixel(100, 100);   //1
            if (col2 == col1) MessageBox.Show("equal");
            else MessageBox.Show("no equal");
выводит "no equal" хотя должно, по идеи, вывести "equal". Могу добавить что в col1 в (1) присвоивается цвет ARGB(0,0,0,0). Почему оно так делает и что надо сделать чтобы этот код начал делать то, что я хочу
Yokka вне форума Ответить с цитированием
Старый 17.02.2011, 00:46   #2
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

Даже если в col1 будет желтый, такое сравнение

> col2 == col1

если не ошибаюсь, проверяет, ссылаются ли col2 и col1 на один и тот же экземпляр класса Color. А надо использовать .Equals():

Код:
object x = 5;
object y = 5;
Console.WriteLine (x == y); // False

object x = 5;
object y = 5;
Console.WriteLine (x.Equals (y)); // True
ЗЫ. Почему col1 присвоивается цвет ARGB(0,0,0,0) -- без понятия.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 17.02.2011, 01:08   #3
Yokka
Пользователь
 
Регистрация: 23.03.2010
Сообщений: 44
По умолчанию

Почему же, такое сравнение col2 == col1 можно использовать, работает, проверял практически.
Извини, все правильно, так col2 == col1 нельзя.

Последний раз редактировалось Yokka; 17.02.2011 в 20:09.
Yokka вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не правильно работает программа sergik-2504 Помощь студентам 1 22.12.2010 09:17
Не правильно (или правильно?) работает позиционирование в WebKit mutabor HTML и CSS 5 09.12.2010 09:54
Не правильно работает запрос ww01031977 Microsoft Office Access 12 21.04.2010 10:52
программа работает. правильно ли? getUp Общие вопросы C/C++ 10 26.03.2010 07:07
Не правильно работает программа Virus_L Помощь студентам 0 28.12.2009 22:52