Страница: 1 |
Страница: 1 |
Вопрос: PaintPicture
Добавлено: 11.08.04 23:46
Автор вопроса: Tigre
Как пользоваться свойством PaintPicture.
Ответы
Всего ответов: 12
Номер ответа: 1
Автор ответа:
night-roll
Вопросов: 36
Ответов: 326
Профиль | | #1
Добавлено: 12.08.04 00:26
PaintPicture Method
See Also Example Applies To
Draws the contents of a graphics file (.bmp, .wmf, .emf, .cur, .ico, or .dib) on a Form, PictureBox, or Printer. Doesn't support named arguments.
синтаксис:
объект.PaintPicture рисунок, x1, y1, ширина1, высота1, x2, y2, ширина2, высота2, код_операции
Метод PaintPicture состоит из следующих частей:
объект - куда натягиваем рисунок
x1 и y1 - начальные координаты на объекте
ширина1 и высота1 - ширина и высота соответсвенно будущего рисунка на объекте
x2 и y2 - начальные координаты на загружаемом рисунке
ширина2 и высота2 - ширина и высота соответсвенно загружаемой области из рисунка
код_операции - операция, которую необходимо произвести при загрузке рисунка. типа Long value. можно просто воспользоваться константами для растровых изображений.
Номер ответа: 2
Автор ответа:
Tigre
Вопросов: 34
Ответов: 63
Профиль | | #2
Добавлено: 12.08.04 00:36
Спасибо. Попробую. Только я не понял что это сверху по англиски и в чём координаты указываются?
Номер ответа: 3
Автор ответа:
night-roll
Вопросов: 36
Ответов: 326
Профиль | | #3
Добавлено: 12.08.04 00:39
(.bmp, .wmf, .emf, .cur, .ico, or .dib) - это форматы, которые этим методом поддерживаются.
а всё остальное - не обращай внимание )
все расчёты ведутся в пикселах ScaleMode=3
Номер ответа: 4
Автор ответа:
Tigre
Вопросов: 34
Ответов: 63
Профиль | | #4
Добавлено: 13.08.04 10:58
А приравнивать его к чему? Ато выдаётся ощибка. И нельзя ли с помощью PaintPicture или чого-нибудь другого загружать с других форматов (gif, jpg) часть рисунка.
Номер ответа: 5
Автор ответа:
night-roll
Вопросов: 36
Ответов: 326
Профиль | | #5
Добавлено: 14.08.04 09:47
>А приравнивать его к чему? Ато выдаётся ощибка.
Re: да, ни к чему(!). рекомендую код операции опустить.
>И нельзя ли с помощью PaintPicture или чого-нибудь другого загружать с других форматов (gif, jpg) часть рисунка.
Re: да, можно, конечно (*.gif, *.jpg, *.wmf, *.cur, *.ico etc.), но всё-таки лучше предварительно (иль сразу) загрузить Bitmap в какой-нибудь контейнер (image, picture, pictureclip)
Номер ответа: 6
Автор ответа:
Tigre
Вопросов: 34
Ответов: 63
Профиль | | #6
Добавлено: 14.08.04 17:45
А можно ли вставить картинку полученую через PaintPicture в объект CommandButton.
Номер ответа: 7
Автор ответа:
night-roll
Вопросов: 36
Ответов: 326
Профиль | | #7
Добавлено: 14.08.04 18:38
на сколько я знаю CommandButton не поддерживает свойства PaintPicture (только Picture), но можно попробовать загрузить картинку (с помощью PaintPicture) в промежуточный контейнер, а затем оттуда на CommandButton(!)
вообщем, тебе и карты в руки
Номер ответа: 8
Автор ответа:
Tigre
Вопросов: 34
Ответов: 63
Профиль | | #8
Добавлено: 14.08.04 19:05
Я загрузил сначало в Picture и с него в CommandButton. Невыходит.
CommonDialog1.ShowOpen
strFileName = CommonDialog1.FileName
Set NewPicture = LoadPicture(strFileName)
x = 0
shirina = NewPicture.Width / 2
For y = 1 To NewPicture.Width Step shirina
Picture1.PaintPicture NewPicture, 1, 1, 1000, 1000, 1, y, visota, shirina
z = z + 1
frmStart.CommandButton(z).Picture = Picture1.Picture
Next y
Номер ответа: 9
Автор ответа:
Tigre
Вопросов: 34
Ответов: 63
Профиль | | #9
Добавлено: 14.08.04 19:20
Исправил ощибку но всёравно не работает:
CommonDialog1.ShowOpen
strFileName = CommonDialog1.FileName
Set NewPicture = LoadPicture(strFileName)
x = 0
shirina = NewPicture.Width / 2
For y = 1 To NewPicture.Width Step shirina
Picture1.PaintPicture NewPicture, 1, 1, 1000, 1000, 1, y, NewPicture.Height, shirina
z = z + 1
command(z).Picture = Picture1.Picture
Next y
Номер ответа: 10
Автор ответа:
night-roll
Вопросов: 36
Ответов: 326
Профиль | | #10
Добавлено: 15.08.04 22:26
в каком именно месте не работает? и какое сообщение выдаёт?
а вообще, в твоём случае ,я думаю, лучше будет через PictureClip.
Номер ответа: 11
Автор ответа:
Tigre
Вопросов: 34
Ответов: 63
Профиль | | #11
Добавлено: 16.08.04 00:55
Никаких сообщений не выдаёт просто объекты масива остаются пустыми. А что за PictureClip, PaintPicture доступен только для формы, PictureBox и объекта принтер.
Номер ответа: 12
Автор ответа:
night-roll
Вопросов: 36
Ответов: 326
Профиль | | #12
Добавлено: 17.08.04 11:57
PaintPicture - это метод, а PictureClip - объект.
примерно как Picture, только загруженный рисунок уже представляется как массив рисунков, необходимо лишь указать сколько предполагаемых элементов по высоте и ширине находятся в загруженном рисунке. Напрмер, ты можешь нарсовать 1 рисунок и втиснуть в него 4 состояния кнопки, т.е. 4 рисунка скомпоновать в 1, затем этот рисунок загрузить в PictureClip и указать в его свойствах, что это массив из 1 строчки и 4 столбцов (или 4строчек, 1 столбца, или 2 столбцов и 2 строчек), взависимости от компановки твоих рисунков на общем.
преимущество - 1 раз загрузил и пользуйся!
недостатки - элементы должны быть одинаковой ширины и высоты.