Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / получить цвет залитого на форму полигона / 4 сообщений из 4, страница 1 из 1
14.01.2013, 17:22
    #38109667
raven_2008
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получить цвет залитого на форму полигона
доброе время суток, коллеги!

на форме есть pictureBox, НА картинке которого пользователь рисует замкнутые многоугольники по точкам. каждый из них залит уникальным цветом.
по клику мыши пытаюсь получить цвет точки
Код: c#
1.
2.
3.
Bitmap bmp = pictureBox1.Image as Bitmap;
                Color cl = bmp.GetPixel(e.X, e.Y);
                MessageBox.Show(cl.ToString());


но, вместо цвета заливки многоугольника получаю цвет рисунка.
что я делаю не так?
...
Рейтинг: 0 / 0
14.01.2013, 17:59
    #38109747
beg-in-er
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получить цвет залитого на форму полигона
raven_2008что я делаю не так?
а чем и как вы рисуете?
вы рисуете на экране , и эти изменения не вносятся в изображение.
надо брать прямо с экрана. есть в ГДИ CopyFromScreen. ну и как то так дальше.
...
Рейтинг: 0 / 0
14.01.2013, 18:10
    #38109772
raven_2008
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получить цвет залитого на форму полигона
спасибо, beg-in-er
...
Рейтинг: 0 / 0
14.01.2013, 18:21
    #38109792
beg-in-er
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
получить цвет залитого на форму полигона
raven_2008
быстрое решение выглядит так. НО напомню, это в координаты экрана. надо вычесть координаты формы и местоположение pictureBox.
ну и всех других контейнеров, коли они тоже есть.
Код: c#
1.
2.
3.
4.
5.
6.
7.
 public Color GetColor(int ScreenX, int ScreenY)
        {
            Bitmap bmp = new Bitmap(1, 1);
            Graphics g = Graphics.FromImage(bmp);
            g.CopyFromScreen(ScreenX, ScreenY, 0, 0, new Size(1, 1));
            return bmp.GetPixel(0, 0);
        }
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / получить цвет залитого на форму полигона / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]