Модераторы: diadiavova, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как определить цвет точки на экране? 
:(
    Опции темы
Michigan
Дата 13.4.2007, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 28.11.2006

Репутация: нет
Всего: нет



как-то наталкивался на функцию определяющую наиболее подходящий цвет по указанной точке, но мозг имеет отличную функцию - ЗАБЫВАНИЕ ...
PM MAIL   Вверх
ivashkanet
Дата 13.4.2007, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 5
Всего: 149



Michigan, в каком виде у тебя есть этот экран?
Если в виде картинки, то есть метод 
Код

Public Function GetPixel (x As Integer, y As Integer) As Color

PM MAIL WWW ICQ   Вверх
Michigan
Дата 13.4.2007, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 28.11.2006

Репутация: нет
Всего: нет



Экран - это DataGrid . хочу знать если в ячейке (0,0) по координате (1,1) цвет красный (скажем там врезан красненький квадратик (5 на 5)),  то изменить цвет квадратика на синий
PM MAIL   Вверх
Exception
Дата 15.4.2007, 17:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 18
Всего: 186



Цитата(Michigan @  13.4.2007,  15:15 Найти цитируемый пост)
Экран - это DataGrid


Я и не знал, что это одно и то же (намёк на просьбу называть вещи своими именами в будущем).

Спрошу сразу: зачем тебе такой изврат -- хранить картинки в DataGrid с учётом их координат? DG изначально создавался для хранения данных.

Это сообщение отредактировал(а) Exception - 15.4.2007, 17:50
PM   Вверх
Michigan
Дата 17.4.2007, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 28.11.2006

Репутация: нет
Всего: нет



Скажем я помощью Graphics врезал в ячейку (0,0) DataGrid какой-то значек (квадратик 5*5) говорящий о том что данные в этой ячейку критичные к какому либо условию.
PM MAIL   Вверх
ivashkanet
Дата 18.4.2007, 10:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 5
Всего: 149



Michigan, а зачем это сделать через ж таким способом?
Не проще ли завести свойство ячейки, в зависимости от значения которого:
1) Будет/не будет  появляться этот квадратик
2) Можно понять, что данные критичны
PM MAIL WWW ICQ   Вверх
Michigan
Дата 18.4.2007, 16:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 28.11.2006

Репутация: нет
Всего: нет



Квадратик нужен лишь для того, чтобы пользователь видел критично ли числовое значение в  данной ячейке или нет... да да только из соображений визуализации для пользователя. Этот вопрос я уже решил, спасибо всем smile .
PM MAIL   Вверх
Kirill89
Дата 20.4.2007, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 501
Регистрация: 17.10.2006
Где: Питер

Репутация: нет
Всего: 4



Можно по теме вопрос?
Значит есть pictureBox  p1
Код

p1.Load("C:\1.jpg")
p1.Height = p1.Image.Height
p1.Width = p1.Image.Width
Dim a As System.Drawing.Image
a = p1.Image.Clone()

Мне нужно получить цвет пикселя 1.1 и 5.5 (например), как это сделать? (Желательно отнести к переменной а)
Как загрузить в переменную а картинку напрямую?



--------------------
PM MAIL WWW   Вверх
ivashkanet
Дата 20.4.2007, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 5
Всего: 149



Kirill89, лови. Вместо Image лучше использовать класс Bitmap.
Код

        p1.Load("C:\1.jpg")
        p1.Height = p1.Image.Height
        p1.Width = p1.Image.Width

        If p1.Image IsNot Nothing Then
            Dim a As System.Drawing.Bitmap = p1.Image

            Dim color As Color = a.GetPixel(0, 0)

            MessageBox.Show("В ячейке (0, 0) лежит цвет: " & color.ToString())
        End If


PM MAIL WWW ICQ   Вверх
Kirill89
Дата 20.4.2007, 16:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 501
Регистрация: 17.10.2006
Где: Питер

Репутация: нет
Всего: 4



ivashkanet, работает  smile  спасибо!
Цитата(ivashkanet @  20.4.2007,  15:51 Найти цитируемый пост)
класс Bitmap

Я до image дошел методом тыка smile буду иметь в виду.

А как по поводу загрузки картинки в переменную напрямую?

Добавлено через 2 минуты и 29 секунд
Color [A=255, R=0, G=255, B=1]
А что такое A ?


--------------------
PM MAIL WWW   Вверх
ivashkanet
Дата 20.4.2007, 17:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 5
Всего: 149



Цитата(Kirill89 @  20.4.2007,  15:22 Найти цитируемый пост)
А как по поводу загрузки картинки в переменную напрямую?

А что ты имеешь под этим ввиду?
Может:
Код

Dim stream as new IO.FileStream("C:\1.jpg")

Dim a As System.Drawing.Bitmap = CType(Image.FromStream(stream), Bitmap)

' пишу без студии, так что могут быть помарки, но суть верная.

Цитата(Kirill89 @  20.4.2007,  15:22 Найти цитируемый пост)
А что такое A ?

Какая-то альфа smile Может прозрачность. Посмотри в MSDN.

PM MAIL WWW ICQ   Вверх
Kirill89
Дата 20.4.2007, 20:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 501
Регистрация: 17.10.2006
Где: Питер

Репутация: нет
Всего: 4



Цитата


Value for the alpha color component.


Value for the red color component. 


Value for the green color component.


Value for the blue color component.


Ясно... Это альфа... на этом и остановимся  smile 

ivashkanet, да. Я именно это имел в виду. Спасибо.


--------------------
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума VB .NET
diadiavova
  • Прежде чем задать вопрос, воспользуйтесь поиском: возможно Ваш вопрос уже обсуждался и на него был получен ответ.
  • Если такой же вопрос не найден, не стоит задавать свой вопрос в любую тему, создайте новую.
  • Заголовок темы должен отображать ее суть.
  • Содержание поста должно описывать проблему понятно, но в то же время, по возможности, лаконично. Сначала следует описать суть вопроса, потом можно привести пример кода, не вынуждайте других участников угадывать в чем Ваша проблема - телепатов здесь нет.
  • Будьте взаимно вежливы и дружелюбны.
  • При оформлении сообщений используйте форматирование, примеры кода заключайте в теги [CODE=vbnet][/CODE].
  • Также ознакомьтесь с общими правилами, действующими на всем форуме.
  • Если вопрос решен, не забывайте помечать тему решенной(вверху темы есть ссылка). Кроме того, если Вы хотите отблагодарить участников, оказавших помощь в решении, можно повысить им репутацию, в случае, если у Вас менее 100 сообщений в форуме и функция изменения репутации Вам недоступна, можете написать сюда.
  • Общие вопросы по программированию на платформе .NET обсуждаются здесь.
  • Литература по VB .NET обсуждается здесь.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, diadiavova.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB .NET | Следующая тема »


 




[ Время генерации скрипта: 0.1221 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.