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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.09.2009, 20:12   #1
Manul_87
Пользователь
 
Регистрация: 30.09.2009
Сообщений: 10
По умолчанию Работа с изображением в Visual Basic

Помогите пожалуйста разобраться с такой задачей в Visual Basic.
Необходимо чтобы BMP изображение, загружаемое через File1 (FileListBox) загружалось в форму далее оно должно выводится в Picture1
По аналогии с открытием текстового файла я написал такой код:

Код:
Private Sub File1_Click()
file = File1.Path & File1.FileName
Dim a As Byte
n1 = FreeFile
Open file For Binary As n1
  Get n1, 1, a
  Picture1 = a
Close n1
End Sub
Однако при Picture1 = a выдаёт ошибку.
Подскажите что не так с кодом?

Далее программа должна посчитать количество пикселей (т.е. размер изображения в формате (x, y) в изображении пройти по ним и выдать цвет каждого пикселя. Это как я понимаю делается при помощи PictureBox.Point(x,y) циклом по всем координатам.
Manul_87 вне форума Ответить с цитированием
Старый 01.10.2009, 16:05   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Так, что ли, надо?



Тогда всё просто:
Код:
Private Sub Dir1_Change(): Me.File1.Path = Me.Dir1: End Sub
Private Sub Drive1_Change(): Me.Dir1.Path = Me.Drive1.Drive: End Sub
Private Sub File1_Click()
    On Error Resume Next
    Me.Picture1.Picture = LoadPicture(Me.File1.Path & "\" & Me.File1)
End Sub

Private Sub Picture1_Change()
    On Error Resume Next
    Me.Text1.Text = "Размер изображения:" & vbNewLine & vbNewLine & _
    "ширина = " & Me.Picture1.Picture.Width & vbNewLine & _
    "высота = " & Me.Picture1.Picture.Height
    For x = 1 To Me.Picture1.Picture.Width
        For y = 1 To Me.Picture1.Picture.Height
            'Debug.Print "Цвет пиксела с координатами X=" & x & ",  Y=" & y & ":  " & Me.Picture1.Point(x, y)
        Next
    Next
End Sub
Результат: (ОЧЕНЬ МНОГО строк типа таких)
Цитата:
Цвет пиксела с координатами X=6, Y=2152: 16711422
Цвет пиксела с координатами X=6, Y=2153: 16777215
Цвет пиксела с координатами X=6, Y=2154: 16777215
Вложения
Тип файла: rar изображение.rar (1.6 Кб, 49 просмотров)
EducatedFool вне форума Ответить с цитированием
Старый 01.10.2009, 19:14   #3
Manul_87
Пользователь
 
Регистрация: 30.09.2009
Сообщений: 10
По умолчанию

Спасибо огромное!
Manul_87 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с изображением Fellot PHP 0 23.05.2009 17:15
задача Visual Basic. Работа с массивами ProgramBad Помощь студентам 3 14.02.2009 02:10
Работа с изображением za4ot Мультимедиа в Delphi 16 08.04.2008 22:27
Работа с изображением Artem PHP 4 20.10.2007 15:56